leetcode Javascript HappyNumber
2016-03-31 23:57
274 查看
给定一个正自然数,如果有n位,位数平方的和小于100*n
如果是四位数,小于四百,
如果是三位数,小于三百,所以四位数或以上肯定不断变小,那么计算happy number的时候,四位以上变成四位以下,就不会出现无限变大的情况,而三位数最多就999个,那肯定有循环咯。。三位以内的数字位数平方和,既然不收敛,而且有限那么考虑三位数的情况:
比如说123
14
17
50
25
29
85
89
145
42
20
4
16
37
58
89
这个数不开心,肯定出现循环了
给定一个数,如果是四位数或以上,位数平方和小于本身,会不断减小到三位数或者以下。
如果是三位数或以下,位数平方和就在0-999之间,假设f(x)不循环,那么出现越来越多的数,多余1000个(那就不止三位数了),与已知矛盾。
所以:从a-b-c-d-...-x最多就包含1000个数字,最后还是得回到a,这就是一个循环集合。所以我敢说不循环就是happy numbe
从例子可以确定,19,82,68,100,这几个数都是Happy Number,收敛为1。
如果是四位数,小于四百,
如果是三位数,小于三百,所以四位数或以上肯定不断变小,那么计算happy number的时候,四位以上变成四位以下,就不会出现无限变大的情况,而三位数最多就999个,那肯定有循环咯。。三位以内的数字位数平方和,既然不收敛,而且有限那么考虑三位数的情况:
比如说123
14
17
50
25
29
85
89
145
42
20
4
16
37
58
89
这个数不开心,肯定出现循环了
给定一个数,如果是四位数或以上,位数平方和小于本身,会不断减小到三位数或者以下。
如果是三位数或以下,位数平方和就在0-999之间,假设f(x)不循环,那么出现越来越多的数,多余1000个(那就不止三位数了),与已知矛盾。
所以:从a-b-c-d-...-x最多就包含1000个数字,最后还是得回到a,这就是一个循环集合。所以我敢说不循环就是happy numbe
从例子可以确定,19,82,68,100,这几个数都是Happy Number,收敛为1。
相关文章推荐
- iOS的JS和OC代码互相调用
- Android 常见的坑
- iOS微信支持遇到的问题:只显示一个确定按钮、onResp不回调、闪回
- Android-全屏动画
- 读取Android sd卡的文件
- android获取外置SD卡的路径
- Android开发学习笔记《一》
- 对照Java学习Swift--枚举(Enumerations)
- IOS学习 GCD 延时执行三种方法 并行/串行/主队列综合练习 队列组 shift+command+o快速查找
- Android四大组件
- 配置文件(App.config文件)
- 小程序 - 最大递增数
- Android竖屏模式实现横屏效果
- Swift系统自带二维码的扫描使用
- 关于Android布局优化(二)
- Android 中在一个程序中启动另一程序
- android软键盘弹出引起的各种不适终极解决方案
- swift 数组转字符串(joinWithSeparator)
- OC阅读笔记八:分类(上)
- Android性能优化-缓存的使用