PAT (Basic Level) 刷题-1002:读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字
搞了很长时间,第二个测试就是过不去
好想知道他的测试用例是啥啊!!!!!郁闷
跪求好心人斧正!!!
然后这是我的代码:
#include<iostream>
using namespace std;
int main()
{
string n;
string s[10]{"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};
while(cin>>n)
{
int cnt=0;
int len=n.length();
for(int j=0;j<len;j++)
cnt+=(n[j]-48);
if(cnt/100!=0)
cout << s[cnt / 100] << " ";
if(cnt/10%10!=0)
cout << s[cnt /10 % 10] << " ";
cout << s[cnt % 10]<<endl;
}
}
p.s.看到有回答说测试用例求和之后,最大是一个五位数
这里我想反驳一下,说一下我的看法
十的一百次方最大是一后边一百个零,我们要求每一个位上的数字之和,那么就是小于十的一百次方的最大的整数:一百个九
一百个九的和是900,他是一个三位数,不是五位