博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vijos P1756 数字反转【进制】
阅读量:5991 次
发布时间:2019-06-20

本文共 748 字,大约阅读时间需要 2 分钟。

背景

noip2011 NO.1

描述

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

格式

输入格式

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

输出格式

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

样例1

样例输入1

123

样例输出1

321

样例2

样例输入2

-380

样例输出2

-83

限制

1s

提示

【数据范围】

-1,000,000,000 ≤ N ≤ 1,000,000,000 。

来源

noip 2011

问题链接

问题分析

这个问题是一个进制计算问题。

一个数除以10的余数即为那个数的个位。不断取出个位和右移,并且将取出的个位重新拼装成一个整数即可。

需要注意负数的情况,幸好负数的余数是负数。

程序说明

(略)

题记

进制是计算中绕不开的话题。

参考链接:(略)

AC的C++程序如下:

#include 
using namespace std;const int BASE10 = 10;int reverse(int n){ int ans = 0; while(n) { ans *= BASE10; ans += n % BASE10; n /= BASE10; } return ans;}int main(){ int n; cin >> n; cout << reverse(n) << endl; return 0;}

转载于:https://www.cnblogs.com/tigerisland/p/7563819.html

你可能感兴趣的文章
asla架构和alsa-lib音频库的移植
查看>>
日志切换
查看>>
JS/JQ常见兼容辅助插件
查看>>
微软发布屏蔽Win10升级的官方办法
查看>>
JSP语法
查看>>
mysql 查看数据库大小
查看>>
java_内存划分
查看>>
计算机上正在运行的句柄、线程、进程分别是什么意思?
查看>>
对症下药 – 疑难杂症之提权技术
查看>>
ThreadStart中带参数
查看>>
编写高质量代码:改善Java程序的151个建议(第5章:数组和集合___建议65~69)
查看>>
Android 音乐播放器之--错误状态下调用导致的异常
查看>>
应该是Angular2的一个bug?
查看>>
linux下,一些关于动态库的问题:
查看>>
我所理解的执行力
查看>>
数据库分库/分表/读写分离
查看>>
java锁对象
查看>>
解决RaycastTarget勾选过多的烦恼
查看>>
生成apk文件遇到的编译问题error: format not a string literal and no format arguments
查看>>
64位的centos6.9的vnc-sever的安装及桌面环境安装
查看>>