FishC--Student 发表于 2021-6-16 12:43:29

Luogu P1307 [NOIP2011 普及组] 数字反转

Luogu P1307 数字反转
https://www.luogu.com.cn/problem/P1307
题目描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零。

这样写为什么只能得 30 分?

#include <iostream>
#include <cstring>
using namespace std;
int main()
{
      string num,tn;
      cin >> num;
      if (num == '-')
      {
                tn = num;
                num.erase(0,1);
      }
      if (tn == '-') cout << '-';
      for (int i=num.length()-1;i>=0;i--)
      {
                if (num == '0' && num != "0") num.erase(num.length()-1,1);
                cout << num;
      }
      return 0;
}

yuxijian2020 发表于 2021-6-16 16:34:36

哪怕你先把整数转成字符串最后再把字符串转回整数呢....
题目说给定一个整数    到你这整数都给你整没了....
页: [1]
查看完整版本: Luogu P1307 [NOIP2011 普及组] 数字反转