我想我脑袋瓦特了,90分在线求教

P1307 [NOIP2011 普及组] 数字反转

LikeAC @ 2020-09-19 18:58:21

真是道令人头大的题

一看是红题,高兴得不得了

没想到…………(此处省略%@¥¥##*&!)

但是这个问题我就搞不懂了

错误点信息: Wrong Answer. wrong answer On line 1 column 1, read 0, expected 9.
但是………… 测试数据输入:900000000
输出:9

不明白

算了直接上代码请教吧

#include<bits/stdc++.h>
using namespace std;
string s;
int len;
int main()
{
    cin>>s;
    len=s.length();
    if(s[0]=='-')
    {
        cout<<'-';
        while(s[len-1]=='0'&&len>2)len--;
        for(int i=len-1;i>=1;i--)
        {
            cout<<s[i];
        }
    }
    else
    {
        while(s[len-1]=='0'&&len>2)len--;
        for(int i=len-1;i>=0;i--)
        {
            cout<<s[i];
        }
    }
    return 0;
}

谢谢

Thanks♪(・ω・)ノ


by LucasXu80 @ 2020-09-19 19:02:39

@LikeAC 您的代码输出的是 09


by LikeAC @ 2020-09-19 19:22:53

哦,不好意思,我忘记在本机上试一试了


by LikeAC @ 2020-09-19 19:23:23

谢谢大佬


by liuzimingc @ 2020-11-01 20:28:06

@LikeAC

#include<cstdio>
#include<cmath>
int main(){
    int a,i=1,as,ans,bure;
    scanf("%d",&a);
    if (a<0)
        printf("-");
    a=abs(a);
    bure=0;
    if (a%10!=0 || bure==1)
        {
            printf("%d",a%10);
            bure=1;
        }
    while (a/10>=1)
    {
        a=a/10;
        if (a%10!=0 || bure==1)
        {
            printf("%d",a%10);
            bure=1;
        }
    }
    return 0;
}

|