#include <bits/stdc++.h> using namespace std; int main(){ int t; cin>>t; map<string, int >m; 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; string num[10] = {"zero","one", "two", "three", "four", "five","six", "seven","eight", "nine"}; for(int i = 0;i<t; i++){ int f; cin>>f; string num1[10], num2[10]; int cnt1= 0, cnt2 = 0; while(cin>>num1[cnt1]){ if(num1[cnt1]=="+"){ break; } cnt1++; } while(cin>>num2[cnt2]){ if(num2[cnt2]=="="){ break; }; cnt2++; } int a, b; if(num1[0][0]>='0'&&num1[0][0]<='9'){ a = stoi(num1[0]); } else{ a = 0; for(int i = 0; i<cnt1; i++){ a += m[num1[i]]*pow(10,cnt1-i-1); } } if(num2[0][0]>='0'&&num2[0][0]<='9'){ b = stoi(num2[0]); } else{ b = 0; for(int i = 0; i<cnt2; i++){ b += m[num2[i]]*pow(10,cnt2-i-1); } } int ans = a+b; if(f==0){ cout<<ans<<endl; } else{ string s = to_string(ans); cout<<num[s[0]-'0']; for(int i = 1; i<s.size(); i++){ cout<<" "<<num[s[i]-'0']; } cout<<endl; } } return 0; } |
Double click to view unformatted code.