解题思路:用map将英文字母和数字进行映射,需要注意这个输入的数的数据范围是小于100的
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <string>
#include <queue>
#include <set>
#include <map>
#include <unordered_map>
#define dbg(a) cout<<#a<<" : "<<a<<endl;
using namespace std;
typedef long long ll;
map<string,int> m;
int main()
{
std::ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);
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;
m["+"]=-1;
m["="]=-2;
string a;
while(true)
{
ll cnt1=0;
while(cin>>a&&m[a]!=-1)
{
cnt1=cnt1*10+m[a];
}
ll cnt2=0;
while(cin>>a&&m[a]!=-2)
{
cnt2=cnt2*10+m[a];
}
if(!cnt1 && !cnt2) break;
cout<<cnt1+cnt2<<endl;
}
return 0;
}