负数不反转

P1307 [NOIP2011 普及组] 数字反转

panrong @ 2023-08-24 16:06:41


#include <iostream>
using namespace std;
int main(){
    long long n;
    cin>>n;
    if(n<10){
        cout<<n;
        return 0;
    }
    if(n<0){
        n=0-n;
        cout<<'-';
    }
    for(int i=1;i<=n;i*=10){
        if(n%(i*10)/i!=0){
        cout<<n%(i*10)/i;
        }
    }
    return 0;
}

by hdkk @ 2023-08-24 16:09:00

 if(n<10){
        cout<<n;
        return 0;
    }

by hdkk @ 2023-08-24 16:09:29

@panrong 负数直接退出了


by Terrible @ 2023-08-24 16:11:59

@panrong

#include <iostream>
using namespace std;
int main(){
    long long n;
    cin>>n;
    if(n==0){
        cout<<0;
        return 0;
    }
    if(n<0){
        n=-n;
        cout<<'-';
    }
    bool clearedzero=false;
    for(int i=1;i<=n;i*=10){
        if(clearedzero||n%(i*10)/i!=0){
            cout<<n%(i*10)/i;
            clearedzero=true;
        }
    }
    return 0;
}

改了改,自己看吧。


by Nuclear_Fish_cyq @ 2023-08-24 16:15:58

@woshishabi250 ?请问发生了什么


by panrong @ 2023-09-01 16:12:00

@Terrible

看不懂bool

#include <iostream>
using namespace std;
int main(){
    long long n;
    cin>>n;
    if(n>=0&&n<10){
        cout<<n;
        return 0;
    }
    if(n<0){
        n=0-n;
        cout<<'-';
    }
    for(int i=1;i<=n;i*=10){
        if(n%(i*10)/i!=0){
        cout<<n%(i*10)/i;
        }
    }
    return 0;
}

自我感觉良好,测试全对,但70

这段时间没看,求再调


by Li_wc0802 @ 2023-09-02 18:56:38

@panrong

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    if (n < 0) {
        cout << "-";
        n = -n;
    }
    if (n % 10 == 0) {
        n = n / 10;
    }
    int ans = 0;
    while (n > 0 || n < 0) {
        int m;
        m = n % 10;
        ans = ans * 10 + m;
        n = n / 10;
    }
    cout << ans << endl;
    return 0;
}

自己写的,看一下吧,应该是AC


|