1005. Spell It Right

使用字符串先读入所有的数字,因为此题已经超过了int或者其他的数字类型的范围,用字符和数字之间的相互变换可能可以更快的完成此题。

最后一个没空格还是必要的处理。

#include <string>
#include <iostream>
using namespace std;
int main(void){
    int sum;
    string num;
    cin>>num;
    for(auto s:num){
        sum+=s-'0';
    }
    //cout<<sum;
    int fl=0;
    num=to_string(sum);
    for(auto s:num){
        if (fl!=0) cout<<" ";
        switch(s){
            case '0':cout<<"zero";break;
            case '1':cout<<"one";break;
            case '2':cout<<"two";break;
            case '3':cout<<"three";break;
            case '4':cout<<"four";break;
            case '5':cout<<"five";break;
            case '6':cout<<"six";break;
            case '7':cout<<"seven";break;
            case '8':cout<<"eight";break;
            case '9':cout<<"nine";break;
        }
        fl++;
    }
    return 0;
}

 

posted @ 2015-03-26 13:34  MQ-380  阅读(130)  评论(0)    收藏  举报