#60分求助

P1307 [NOIP2011 普及组] 数字反转

BBY123 @ 2022-08-26 19:16:41

#include<bits/stdc++.h>
using namespace std;
int main(){
    string a;
    cin>>a;

    if(a.length()==1&&a[0]==0){
        cout<<"0";
        return 0;
    }
    else{
        int s = a.length()-1;
        int h = a.length()-2;
        if(a[0]=='-'){
        a[0]='\n';
        cout<<"-";
        if(a[a.length()-1]=='0'){
            for(int i = a.length()-2;i >= 0;i--){
                if(a[i]=='0'){
                    h--;
                    s=h;
                }
            }
            for(int i = h;i >= 0;i--){
                cout<<a[i];
            }   
        }
        else{
            for(int i = a.length()-1;i >= 0;i--){   
                cout<<a[i];
            }   
        }
    }

    else{
        if(a[a.length()-1]=='0'){
            for(int i = a.length()-2;i >= 0;i--){
                if(a[i]=='0'){
                    h--;
                    s=h;
                }
            }
            for(int i = s;i >= 0;i--){
                cout<<a[i];
            }
        }
        else{
            for(int i = a.length()-1;i >= 0;i--){
                cout<<a[i];
            }
        }
    }
return 0;
}

by Chenjunyu2010 @ 2022-08-26 20:04:46

-3080、-9080什么的都错


|