Description
节日即将结束,为了纪念这个愉快的假期,来做到简单的a+b吧
输入两个小于一百的正整数a,b,求他们的和。是不是很简单?
但怎么能就这样呢,我们加点娱乐吧,这两个数的每一位都由它们
对应的英文单词列出。下面就看你的了~~
Input
输入包含多组数据,每组数据占一行,格式为”a + b =”
相邻的两个字符串之间有一个空格隔开。当a,b同时为0的时候退出
Output
每次输入占一行,输入整数表示下的a+b
Sample Input
one + two =
three four + five six =
zero + zero =
Sample Output
3
90
简单模拟
CODE:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <iostream>
#include <algorithm>
#include <cmath>
#include <stack>
#include <deque>
#include <map>
#include <set>
#include <vector>
#include <string>
#include <queue>
#include <functional>
#include <time.h>
using namespace std;
int main()
{
string t[]={"zero","one","two","three","four","five","six","seven","eight","nine"};
string ch;
while(cin >> ch)
{
int a1,sum1=0;
for(int i=0;i<10;i++)
if(t[i]==ch)
sum1+=i;
while(cin >> ch)
{
if(ch=="+")
break;
sum1*=10;
for(int i=0;i<10;i++)
if(t[i]==ch)
a1=i;
sum1+=a1;
}
int sum2=0,a2;
cin >> ch;
for(int i=0;i<10;i++)
if(t[i]==ch)
sum2+=i;
while(cin >> ch)
{
if(ch=="=")
break;
sum2*=10;
for(int i=0;i<10;i++)
if(t[i]==ch)
a2=i;
sum2+=a2;
}
if(sum1==0&&sum2==0)
return 0;
cout << sum1 + sum2 << endl;
}
return 0;
}