题目名称 623. [NOIP2011] 数字反转
输入输出 reverse.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 128 MB
测试数据 10 简单对比
题目来源 2011-11-26
开放分组 全部用户
提交状态
分类标签
NOIP 基本 动态规划 字符串
通过:466, 提交:1147, 通过率:40.63%
GravatarTA 100 0.000 s Pascal
GravatarLOSER 100 0.000 s C++
GravatarSPA 100 0.000 s C++
GravatarAHOI_521 100 0.000 s C++
Gravatar风吹我已散 100 0.000 s C++
GravatarHakurou! 100 0.000 s C++
Gravataraccepted 100 0.000 s C++
Gravataraccepted 100 0.000 s C++
Gravataraccepted 100 0.000 s C++
Gravataraccepted 100 0.000 s C++
关于 数字反转 的讨论
NOIP2011留念。
GravatarTruth.Cirno
2011-12-14 21:35 1楼
好像麻烦过头了······
Gravatar752199526
2014-01-29 18:29 2楼
根本就很难TAT
Gravatar安静
2014-03-04 11:10 3楼
过了!!
Gravatar2014
2014-05-28 19:28 4楼
strrev()为什么不能用?
Gravatar꧁༈saber༈꧂
2014-06-30 14:45 5楼
GravatarAAAAAAAAAA
2014-09-04 21:02 6楼
Gravatar席一鸣
2014-12-02 18:56 7楼
Gravatarforever
2015-03-04 14:21 8楼
忽然感觉代码好丑……
Gravatar啊吧啦吧啦吧
2015-07-28 11:42 9楼
hehe
Gravatarサイタマ
2015-09-21 20:47 10楼
我居然一遍过了!!!
Gravatar冥焱
2015-10-29 12:57 11楼
王银鹏是2b.
Gravatarwypsz
2015-12-17 17:16 12楼
stl的使用
Gravatarsxysxy
2016-09-22 13:52 13楼
身败名裂 死在stl上_(:з」∠)_
GravatarShirry
2016-12-07 20:52 14楼
没用字符串,他居然用负数坑我。
GravatarRE:从零开始
2017-01-09 19:21 15楼
放了3个月没做。。。我简直sb
GravatarkZime
2017-03-23 15:10 16楼
guoshiju真的丑
Gravatar辣是辣条君~
2017-04-20 20:56 17楼
菜鸟提供的方案
Gravatarhzoi2017_nzy
2017-08-10 22:20 18楼
勾起了我初学OI时的回忆..........
GravatarJustWB
2017-09-16 10:33 19楼
用int做的,没用字符串


#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iomanip>
#include<cmath>
using namespace std;
int main(){
freopen("reverse.in","r",stdin);
freopen("reverse.out","w",stdout);
long long int n,n1,n2;
int a[12],t=0,t1=0;
cin>>n;
if(n<0) cout<<'-';
n=abs(n);
n2=n;
n1=n;
for(int i=1;;i++)
{n=n/10;
t++;
if(n==0) break;}
for(int i=1;i<=t;i++)
{a[i]=n1%10;
n1=n1/10;}

for(int i=1;;i++)
{if(n2%10==0) t1++;
n2=n2/10;
if(n2%10!=0) break;}

for(int i=1+t1;i<=t;i++)
cout<<a[i];
return 0;
}
很渣的程序 0.003s,仅供参考
GravatarShallowDream雨梨
2017-11-13 21:21 20楼
渣渣程序#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;

int main(void)
{ freopen("reverse.in","r",stdin);
freopen("reverse.out","w",stdout);
long long n = 0;int a[11]={0};
cin>>n;
if(n<0){
cout<<"-";n=-n;}
for(int i = 1;i++;)
{ if(a[i-1]==0&&n%10==0){a[i]=n%10;
n = n/10;continue;}
else{ a[i]=10;
cout<<n%10;n = n/10;if(n==0)break;
}
}
}我的该是最短了的吧
Gravatar2018noip必胜!
2018-09-15 20:29 21楼
回复 @2018noip必胜! :
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
freopen("aplusb.in","r",stdin);
freopen("aplusb.out","w",stdout);
int a,b;
cin>>a>>b;
cout<<a+b<<endl;
return 0;
}
呵呵
Gravatar阿斯蒂芬国际航空公司
2018-09-26 20:22 22楼
一遍就AC了
Gravatar观、一世沧桑如画
2018-10-02 08:28 23楼

623. [NOIP2011] 数字反转

☆   输入文件:reverse.in   输出文件:reverse.out   简单对比
时间限制:1 s   内存限制:128 MB

【问题描述】
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。

【输入】
输入文件名为reverse.in。
输入共1 行,一个整数N。

【输出】
输出文件名为reverse.out。
输出共1 行,一个整数,表示反转后的新数。

【输入输出样例1】

reverse.in

123

reverse.out

321

【输入输出样例2】

reverse.in

-380

reverse.out

-83

【数据范围】
-1,000,000,000 ≤ N≤ 1,000,000,000。