4 条题解

  • 0
    @ 2023-10-14 23:02:48
    #include<bits/stdc++.h>
    #define int long long
    using namespace std;
    
    signed main(){
    int n;
    cin>>n;
    int sign = n/abs(n);//以1和-1的形式记录n的正负(n>0时,n÷│n│=1;n<0时,n÷│n│=-1)
    n = abs(n);//获取n的绝对值
    int fzh = 0;//│n│反转后的值
    for(int i = 1;i <= n;i *= 10){//对│n│进行反转
    fzh *= 10;
    fzh += (signed)floor(n%(10*i)/i);
    //提取│n│的每一位然后添加到fzh末尾
    }
    fzh *= sign;//将反转后的│n│乘以1或-1得到结果
    cout<<fzh;
    }
    

    信息

    ID
    309
    时间
    1000ms
    内存
    128MiB
    难度
    7
    标签
    (无)
    递交数
    265
    已通过
    63
    上传者