其他分享
首页 > 其他分享> > 【例题1】数字反转

【例题1】数字反转

作者:互联网

【例题1】数字反转

题面

题目描述

给定一个整数,请将该数各个位上数字反转得到一个新数。

新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零。

输入格式

输入共 \(1\) 行,一个整数 \(N\)。

输出格式

输出共 \(1\) 行,一个整数,表示反转后的新数。

样例

样例输入

-380

样例输出

-83

数据范围与提示

对于 \(100\%\) 的数据,\(-10^9\leq N\leq 10^9\)。

分析
  • 暴力模拟即可
Code
#include <bits/stdc++.h>
using namespace std;

string s;

int main(void) {
    cin >> s;
    if (s[0] == '-') {
        cout << "-";
        bool ok = 0;
        for (int i = s.size() - 1; i > 0; --i) {
            if (ok)
                cout << s[i];
            else {
                if (s[i] == '0')
                    continue;
                else
                    cout << s[i], ok = 1;
            }
        }
    } else {
        bool ok = 0;
        for (int i = s.size() - 1; i >= 0; --i) {
            if (ok)
                cout << s[i];
            else {
                if (s[i] == '0')
                    continue;
                else
                    cout << s[i], ok = 1;
            }
        }
    }
    return 0;
}

标签:新数,数字,反转,样例,整数,例题,cout
来源: https://www.cnblogs.com/Juro/p/15013296.html