题目描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。
输入描述
输入共 1 行,一个整数 N。
输出描述
输出共 1 行,一个整数,表示反转后的新数。
样例1
输入复制
123
输出
321
样例2
输入复制
-380
输出
-83
提示
【数据范围】
-1,000,000,000 ≤ N ≤ 1,000,000,000。
这道题有三个要点:
1、会有浮点数的情况,所以得用double(双精度浮点数)来定义变量。
2、380转换后,不是083,0要舍去,变成83。
3、符号保留,-38变-83。
AC代码如下:
#include <bits/stdc++.h>
using namespace std;
double sum=0;
int main()
{
double n;
cin >> n;
for (int i=1;; i++)
{
sum+=1/(double)i;
if (sum>n)
{
cout << i << endl;
return 0;
}
}
return 0;
}
这期就到这里,请多多点赞收藏,谢谢。