zzx20120619 @ 2024-10-20 12:00:52
上代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
string a;
getline(a);
if(a[0]=='+'||a[0]=='-'){
cout<<a[0];
for(int i=a.size()-1;i>=1;i--){
if(a[i]=='0'&&i==1){
continue;
}else{
cout<<a[i];
}
}
}else{
for(int i=a.size()-1;i>=0;i--){
if(a[i]=='0'&&i==0){
continue;
}else{
cout<<a[i];
}
}
}
return 0;
}
求调,必关。(顺便能不能分享点冲刺csp-j的题,本人正在冲刺)
by chenxi2009 @ 2024-10-20 12:08:20
@zzx20120619 不知道你判
by chenxi2009 @ 2024-10-20 12:09:20
@zzx20120619 正确做法是开一个 bool 变量记录是否打印过非零数字,打印过了才会输出
by zzx20120619 @ 2024-10-20 12:09:34
哦,好像是的。
by zzx20120619 @ 2024-10-20 12:12:37
@chenxi2009 但是不是只要判断是不是前导零就行了吗?
by zzx20120619 @ 2024-10-20 12:13:43
就是他的位置在不在第一个。
by chenxi2009 @ 2024-10-20 12:14:42
@zzx20120619 有没有可能有两个
by chenxi2009 @ 2024-10-20 12:17:27
@zzx20120619 判零是对的,但是可能开头有不止一个 5300
,正确输出:35
,你的输出:0035
。
by zzx20120619 @ 2024-10-20 12:53:36
@chenxi2009 哦。知道了,谢谢帮助。
by zzx20120619 @ 2024-10-20 12:56:38
@chenxi2009 一百分了,但是最后那个测试点还是没过。
by chenxi2009 @ 2024-10-20 13:08:02
@zzx20120619 代码再发我一下。