设为首页 加入收藏

TOP

hdoj 1228 A + B()map容器
2015-07-20 17:30:04 来源: 作者: 【 】 浏览:2
Tags:hdoj 1228 map 容器

A + B

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 12119 Accepted Submission(s): 7080

Problem Description 读入两个小于100的正整数A和B,计算A+B.
需要注意的是:A和B的每一位数字由对应的英文单词给出.

Input 测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔.当A和B同时为0时输入结束,相应的结果不要输出.

Output 对每个测试用例输出1行,即A+B的值.

Sample Input
one + two =
three four + five six =
zero seven + eight nine =
zero + zero =

Sample Output
3
90
96

Source 浙大计算机研究生复试上机考试-2005年
心得 第一次用map感觉还挺好。。。 大笑 代码如下:
#include
  
   
#include
   
     #include
    
      #include
      using namespace std; int main() { int a,b; string str2,str1; map
      
       m;//此处的map函数可以理解为一个一对一的key,value对也就是键值对,通常用途与快速寻找一个key对应的value是多少 m["zero"]=0; m["one"]=1; m["two"]=2; m["three"]=3; m["four"]=4; m["five"]=5; m["six"]=6; m["seven"]=7; m["eight"]=8; m["nine"]=9; while(a+b) { a=0,b=0; while(cin>>str1&&str1!="+") a=a*10+m[str1]; while(cin>>str2&&str2!="=")//双引号 b=b*10+m[str2]; if(a+b) printf("%d\n",a+b); } return 0; }
      
    
   
  


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++ STL源码学习(map,set内部hea.. 下一篇BZOJ 2599 IOI2011 Race 树的点分..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·HyperText Transfer (2025-12-26 07:20:48)
·半小时搞懂 HTTP、HT (2025-12-26 07:20:42)
·CPython是什么?PyPy (2025-12-26 06:50:09)
·Python|如何安装seab (2025-12-26 06:50:06)
·python要学习数据分 (2025-12-26 06:50:03)