#include<iostream>
using namespace std;
int tonum(string str){
int sum=0;
for(int i=0;i<str.length();i++){
sum=str[i]-'0'+sum;
}
return sum;
}
void fun(int num){
string str[10]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};
cout<<str[num];
}
void toPY(int num){
int flag=0;
for(int i=10000000;i;i/=10){
if(num/i||flag!=0){
if(flag)
cout<<' ';
flag=1;
fun(num/i);
num=num%i;
}
}
}
int main(void){
string str;
cin>>str;
int num=tonum(str);
toPY(num);
return 0;
}
这题没有参考别人的代码:
想法也很自然,桶排序的知识也比较好用,flag也标志的很自然,仿佛就是水到渠成似的