#include<stdio.h> #include<string.h> int main(){ int t,k,a[2],n,m,len,sum,s[10],i,j; char str[10]; scanf("%d",&t); while(t--){ scanf("%d",&k); n=0;a[0]=a[1]=0;m=0; while(1){ scanf("%s",str); if(str[0]=='=') break; if(str[0]>='a'&&str[0]<='z'){ switch(str[0]){ case 'o': if(m==0) a[n]=a[n]+1; else a[n]=a[n]*10+1; m=1; break; case 't': if(str[1]=='w'){ if(m==0) a[n]=a[n]+2; else a[n]=a[n]*10+2;} else{ if(m==0) a[n]=a[n]+3; else a[n]=a[n]*10+3; } m=1; break; case 'f':if(str[1]=='o'){ if(m==0) a[n]=a[n]+4; else a[n]=a[n]*10+4; } else{ if(m==0) a[n]=a[n]+5; else a[n]=a[n]*10+5; } m=1; break; case 's': if(str[1]=='i'){ if(m==0) a[n]=a[n]+6; else a[n]=a[n]*10+6; } else{ if(m==0) a[n]=a[n]+7; else a[n]=a[n]*10+7; } m=1; break; case 'e': if(m==0) a[n]=a[n]+8; else a[n]=a[n]*10+8; m=1; break; case 'n': if(m==0) a[n]=a[n]+9; else a[n]=a[n]*10+9; m=1; break; case 'z': if(m==0) a[n]=a[n]+0; else a[n]=a[n]*10+0; m=1; break; default:; } } if(str[0]>='0'&&str[0]<='9'){ len=strlen(str); for(i=0;i<len;i++){ a[n]=a[n]+str[i]-48; if(str[i+1]!='\0') a[n]=a[n]*10; } m=1; } if(str[0]=='+'){ n++; m=0; } } if(k==0) printf("%d\n",a[0]+a[1]); else{ sum=a[1]+a[0]; i=0; while(sum!=0){ s[i++]=sum%10; sum=sum/10; } for(j=i-1;j>=0;j--){ switch(s[j]){ case 1: if(j>0) printf("one "); else printf("one"); break; case 2:if(j>0) printf("two "); else printf("two"); break; case 3:if(j>0) printf("three "); else printf("three"); break; case 4: if(j>0) printf("four "); else printf("four"); break; case 5:if(j>0) printf("five "); else printf("five"); break; case 6:if(j>0) printf("six "); else printf("six"); break; case 7:if(j>0) printf("seven "); else printf("seven"); break; case 8:if(j>0) printf("eight "); else printf("eight"); break; case 9:if(j>0) printf("nine "); else printf("nine"); break; case 0:if(j>0) printf("zero "); else printf("zero"); break; default:; } } printf("\n"); } } } |
Double click to view unformatted code.