hdu1282
来源:互联网 发布:com域名要备案吗 编辑:程序博客网 时间:2024/06/11 15:45
回文数猜想
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 4225 Accepted Submission(s): 2516
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1282Problem Description
一个正整数,如果从左向右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数。任取一个正整数,如果不是回文数,将该数与他的倒序数相加,若其和不是回文数,则重复上述步骤,一直到获得回文数为止。例如:68变成154(68+86),再变成605(154+451),最后变成1111(605+506),而1111是回文数。于是有数学家提出一个猜想:不论开始是什么正整数,在经过有限次正序数和倒序数相加的步骤后,都会得到一个回文数。至今为止还不知道这个猜想是对还是错。现在请你编程序验证之。
Input
每行一个正整数。
特别说明:输入的数据保证中间结果小于2^31。
特别说明:输入的数据保证中间结果小于2^31。
Output
对应每个输入,输出两行,一行是变换的次数,一行是变换的过程。
Sample Input
2722837649
Sample Output
327228--->109500--->115401--->219912237649--->132322--->355553解题思路:在把n的各个位分离时,一边分离一边计算它的回文数,check返回回文数的值。如果n和check(n)不相等,就把n修改为二者和,并存入a数组,继续下一次循环。完整代码:#include <functional>#include <algorithm>#include <iostream>#include <fstream>#include <sstream>#include <iomanip>#include <numeric>#include <cstring>#include <climits>#include <cassert>#include <complex>#include <cstdio>#include <string>#include <vector>#include <bitset>#include <queue>#include <stack>#include <cmath>#include <ctime>#include <list>#include <set>#include <map>using namespace std;#pragma comment(linker, "/STACK:102400000,102400000")typedef long long LL;typedef double DB;typedef unsigned uint;typedef unsigned long long uLL;/** Constant List .. **/ //{const int MOD = int(1e9)+7;const int INF = 0x3f3f3f3f;const LL INFF = 0x3f3f3f3f3f3f3f3fLL;const DB EPS = 1e-9;const DB OO = 1e20;const DB PI = acos(-1.0); //M_PI;int a[1000001];int check(int n){ int num = 0; while(n > 0) { int k = n % 10; num = num * 10 + k; n /= 10; } return num;}int main(){ #ifdef DoubleQ freopen("in.txt","r",stdin); #endif int n; while(~scanf("%d",&n)) { int num = n; int sum = 0; while( n != check(n) ) { n = n + check(n); a[sum ++] = n; } printf("%d\n",sum); printf("%d",num); for(int i = 0 ; i < sum - 1; i ++) printf("--->%d",a[i]); printf("--->%d\n",a[sum - 1]); }}
0 0
- hdu1282
- HDU1282
- hdu1282
- hdu1282(水题)
- hdu1282回文数猜想
- hdu1282回文数猜想
- HDU1282:回文数猜想
- HDU1282 回文数猜想
- 第二周hdu1282
- hdu1282 回文数猜想
- hdu1282(字符串回文)
- HDU1282 回文数猜想
- HDU1282 回文数猜想
- hdu1282-回文数猜想
- HDU1282 回文数猜想
- HDU1282回文数猜想
- HDU1282 回文数猜想
- HDU1282 最简单的计算机
- java基础复习(5)
- 【POJ】3683 Priest John's Busiest Day 2-sat
- 机器学习、图像处理论文与源代码大汇总
- 信号完整性研究系列--电容的去耦时间
- PHP反射类ReflectionClass和ReflectionObject
- hdu1282
- 敏捷开发一千零一夜
- C++中的结构体,C管理进程代码,C++管理进程代码,C语言中的联合体
- Zookeeper权限控制
- Linux快速启动工具(五)
- log级别设置
- struts1工作原理
- 有感于STL的内存管理
- iOS开发者企业计划:D-U-N-S 号申请最新流程的心得