AcWing寒假每日一题——Day35拼写正确

给定一个非负整数 N N N,你的任务是计算 N N N 的所有数字的总和,并以英语输出总和的每个数字。

输入格式
共一行,包含一个整数 N N N

输出格式
共一行,用英语输出总和的每个数字,单词之间用空格隔开。

数据范围
0 ≤ N ≤ 1 0 100 0≤N≤10^{100} 0N10100
输入样例:

12345

输出样例:

one five

分析:模拟

代码:

#include<bits/stdc++.h>
using namespace std;
int k,sum;
string s;
string x[10],ans[1000];
int main(){
    
    
    x[0]="zero";
    x[1]="one";
    x[2]="two";
    x[3]="three";
    x[4]="four";
    x[5]="five";
    x[6]="six";
    x[7]="seven";
    x[8]="eight";
    x[9]="nine";
    cin>>s;
    for(int i=0;s[i];i++){
    
    
        sum+=s[i]-'0';
    }
    if(!sum) ans[k++]=x[0];
    while(sum){
    
    
        ans[k++]=x[sum%10];
        sum/=10;
    }
    for(int i=k-1;i>=0;i--) cout<<ans[i]<<" ";
}

猜你喜欢

转载自blog.csdn.net/messywind/article/details/113818164
今日推荐