PAT甲级如何准备?

196 阅读1分钟

拼写正确

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

输入格式

共一行,包含一个整数 N。

输出格式

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

数据范围

0≤N≤101000≤N≤10100

输入样例:

12345

输出样例:

one five
#include <iostream>
​
using namespace std;
​
int main()
{
    string s;
    cin >> s;
    
    int sum = 0;
    for(auto c : s) sum += c - '0';
    
    string str = to_string(sum);
    
    string word[10] = {
        "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"
    };
    
    cout << word[str[0] - '0'];
    for(int i = 1; i < str.size(); i ++) cout << " " << word[str[i] - '0'];
}

\