博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Happy Number
阅读量:7256 次
发布时间:2019-06-29

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

解决这个问题的思路:

发现规律的图片
第一步:从上图中,我们能够发现:在闭区间[1,13]内的全部数经过次数有限的迭代后,它们将会变成1或者4。而1是happy number,4不是happy number。进而能够推断出闭区间[1,13]内的全部数的happy性。

第二步:以下我做了一个大胆的如果。全部的正数经过可接受的有限次迭代后都将变成1或者4。

因为在数学上给出证明所需的时间远远大于用程序验证。所以暂且不进行数学证明,直接进行在线编程。结果正确。

代码例如以下:

class Solution {public:    bool isHappy(int n) {        int quotient, remainder;        vector
digitalArr; quotient = n; int i = 1; while(true) { digitalArr.clear(); for(; quotient != 0; ) { remainder = quotient % 10; quotient = quotient / 10; if(remainder != 0) digitalArr.push_back(remainder); } quotient = 0; for(vector
::iterator iter = digitalArr.begin(); iter != digitalArr.end(); iter++) { quotient = quotient + (*iter) * (*iter); } if(quotient == 1 || quotient == 4) break; } if(quotient == 1) return true; else return false; }};
你可能感兴趣的文章
职责要求
查看>>
java反射机制
查看>>
哈哈,好一个 uri,
查看>>
LVM扩容
查看>>
三:简单工厂模式
查看>>
正则表达式元字符
查看>>
【vue系列】elementUI 穿梭框右侧获取当前选中项的值的思路
查看>>
C语言常用函数手册
查看>>
laravel and lumen 软删除操作
查看>>
2015秋季书籍阅读计划
查看>>
数据集---Zachary's karate club---等
查看>>
Django之Form组件
查看>>
jquery validate.js 不能验证
查看>>
html的异步调用
查看>>
请教Ado.Net按文本读取CSV/Txt文件时,如何禁止将内容转换成数字
查看>>
电子电路基础——电感、磁珠
查看>>
Django tutorial part2
查看>>
loj10098 分离的路径
查看>>
超级详细找CALL写CALL教程[转]
查看>>
蓝桥杯:基础练习 特殊的数字
查看>>