0
0
0
0
0
李秉轩
修练者
修练者
他来了,他来了,他带着完整代码走来了
/*
#include<iostream>
#include<string>
using namespace std;
string s;
string dw[7]={"shiwan","wan","qian","bai","shi",""};
int main(){
cin>>s;
int n=s.length();
for(int i=0,j=6-n;i<n;i++,j++){
if(s[i]!='0'){
cout<<s[i]<<dw[j];
}else{
if(n==1 ||i+1<n&&s[i+1]!='0'){
cout<<0;
}
}
}
return 0;
}
*/
0
0
江齐悦
高级光能
高级光能
大写数字变换的几种情况:
1.给每一位加后缀。
2.如果中间有0,那么不加后缀。
3.如果末尾有0,那么不输出0。
4.中间有多个连续的0,那么只输出1个0。
5.0输出0。
解题思路:
1.遍历字符串s。
2.如果当前的s[i]是0,那么用flag标识出现过的0。
3.如果当前的s[i]是非0的,那么先根据flag判断是否要输出0,再处理当前数字。
核心(定义和框架自己写):
for(int i=0;i<?;i++){
if(s[i]=='?')
flag=?;
else{
if(?){
cout<<"0";
flag=false;
}
cout<<s[i]<<post[?];
}
}
0
江齐悦
高级光能
高级光能
核心(其他的自己写):
if(n == 0) cout<<0;
else if(n == 100000) cout<<"1shiwan";
else{
while(n){
i++;
a[i] = n%10;
n /= 10;
}
for(i = i;i >= 1;i--){
if(a[i] != 0){
if(flag == true){
cout<<0;
flag=false;
}
cout << a[i] << ch[i];
}
else flag = true;
}
}
0
0