**1294: [蓝桥杯2016初赛]平方怪圈
时间限制: 1 Sec 内存限制: 256 MB
提交: 461 解决: 331
[状态] [提交] [命题人:外部导入]
题目描述
如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。对新产生的正整数再做同样的处理。
如此一来,你会发现,不管开始取的是什么数字,最终如果不是落入1,就是落入同一个循环圈。
请写出这个循环圈中最大的那个数字。
输出
输出答案即可
来源/分类**
个人认为这个题对于想的比较多的人容易出错,而对想的简单的人来说会较难做出来,算是一道有水平的水题
重点说想的比较多的人,如果代入n等于99或者999,输出结果对他的代码可能是162与243,然后认为不对,最大的数字是看他的位数最多有多少位,而这个没给范围
实际上这个说的是能闭环的最大值,并不是整个过程的最大值
整个过程可以用数学方法表示出来。
手算可知,最大能闭环的只能两位数特别是90以内,因为在大于90时,是收敛减少的,然后在小于90时,在形成闭环前是在增大的,于是代入89,得到的145就是闭环的最大值
#include<iostream>