【题解】Luogu p1307 【数字反转】大暴力

对于不会字符串的同学可以参考本人的方法。(我过这题的时候就不会字符串,代码敲了半天)

不说了,直接上暴力代码:

    #include<iostream>
    using namespace std;
    int main(){
        long long i,n,m=0,s1=0,s2=0,s3=0,s4=0,s5=0,s6=0,s7=0,s8=0,s9=0;//s1到s9代表数字的每一位。(最大是九位嘛)
        cin>>i;
        if(i<0){
            n=0-i;}
        else{
            n=i;}
        if(n>=1){
            s1=n%10;}
        if(n>=10){
            s2=n%100/10;}
        if(n>=100){
            s3=n%1000/100;}
        if(n>=1000){
            s4=n%10000/1000;}
        if(n>=10000){
            s5=n%100000/10000;}
        if(n>=100000){
            s6=n%1000000/100000;}
        if(n>=1000000){
            s7=n%10000000/1000000;}
        if(n>=10000000){
            s8=n%100000000/10000000;}
        if(n>=100000000){
            s9=n%1000000000/100000000;}
        if(s9==0){
            if(s8==0){
                if(s7==0){
                    if(s6==0){
                        if(s5==0){
                            if(s4==0){
                                if(s3==0){
                                    if(s2==0){
                                        if(s1==0){
                                            if(i<0){
                                                m=0-m;}
                                            cout<<m;
                                            return 0;}
                                        m=s1;
                                        if(i<0){
                                            m=0-m;}
                                        cout<<m;
                                        return 0;}
                                    m=s1*10+s2;
                                    if(i<0){
                                        m=0-m;}
                                    cout<<m;
                                    return 0;}
                                m=s1*100+s2*10+s3;
                                if(i<0){
                                    m=0-m;}
                                cout<<m;
                                return 0;}
                            m=s1*1000+s2*100+s3*10+s4;
                            if(i<0){
                                m=0-m;}
                            cout<<m;
                            return 0;}
                        m=s1*10000+s2*1000+s3*100+s4*10+s5;
                        if(i<0){
                            m=0-m;}
                        cout<<m;
                        return 0;}
                    m=s1*100000+s2*10000+s3*1000+s4*100+s5*10+s6;
                    if(i<0){
                        m=0-m;}
                    cout<<m;
                    return 0;}
                m=s1*1000000+s2*100000+s3*10000+s4*1000+s5*100+s6*10+s7;
                if(i<0){
                    m=0-m;}
                cout<<m;
                return 0;}
            m=s1*10000000+s2*1000000+s3*100000+s4*10000+s5*1000+s6*100+s7*10+s8;
            if(i<0){
                m=0-m;}
            cout<<m;
            return 0;}
        else{
            m=s1*100000000+s2*10000000+s3*1000000+s4*100000+s5*10000+s6*1000+s7*100+s8*10+s9;
            if(i<0){
                m=0-m;}
            cout<<m;}
        return 0;
}//慢慢看吧,不难理解。(如果你有耐心看完的话)

发布者:Viva_Hurricane

我觉得站主素质极低!

加入对话

1条评论

电子邮件地址不会被公开。 必填项已用*标注