题目
Write an algorithm to determine if a number is “happy”.
A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squares of its digits, and repeat the process until the number equals 1 (where it will stay), or it loops endlessly in a cycle which does not include 1. Those numbers for which this process ends in 1 are happy numbers.
Example: 19 is a happy number
12 + 92 = 82
82 + 22 = 68
62 + 82 = 100
12 + 02 + 02 = 1
思路
无
代码
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
class Solution {
public:
bool isHappy(int n) {
if(n == 1){
return true;
}
if(n == 0){
return false;
}
return Recursion(n);
}
private:
vector<int> visited;
bool Recursion(int n){
if(n == 1){
return true;
}
int num = n;
int tmp,value = 0;
while(num){
tmp = num % 10;
value += tmp * tmp;
num /= 10;
}
vector<int>::iterator result = find(visited.begin(),visited.end(),value);
if(result != visited.end()){
return false;
}
visited.push_back(value);
return Recursion(value);
}
};
int main(){
Solution solution;
int n = 2;
if(solution.isHappy(n)){
cout<<n<<" is Happy Number"<<endl;
}
else{
cout<<n<<" is not Happy Number"<<endl;
}
return 0;
}
运行时间
<script type="text/javascript">
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('<ul/>').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('<li/>').text(i));
};
$numbering.fadeIn(1700);
});
});
</script>
分享到:
相关推荐
LeetCode202_HappyNumber 判断一个数是否为happy nuumber,所谓happy number是指一个数,将其替换为其各位数字的平方和,重复这个过程,如果最终能得到1,这就是happy number;如果陷入一个不包含1的循环中,就不是...
268| [Missing Number](https://leetcode.com/problems/missing-number/) | [C++](./C++/missing-number.cpp) [Python](./Python/missing-number.py) | _O(n)_ | _O(1)_ | Medium | LintCode || 318| [Maximum ...
Number(202)!(要求全部用哈希思想实现!)(选做)(注意:在第四天会进行继续学习) 链表 实现单链表、循环链表、双向链表,支持增删操作 实现单链表反转 实现两个有序的链表合并为一个有序链表 实现求链表的中间...
leetcode 不会准备工作 :puzzle_piece: 用于通过测试驱动开发解决 LeetCode 问题的 TypeScript ...Happy Number ' 关于这个脚本这个 repo 带有一个脚本,可以为新的 LeetCode 问题快速设置启动文件
happyNumber array 155 minStack stack 111 二叉树的最小深度 , tree 110 平衡二叉树 tree 104 二叉树的最大深度 tree 100 相同的树 tree 94 二叉树的中序遍历 tree 70 爬楼梯 dp 53 最大子序和 dp 26 删除排序数组...
##leetcode by xiexiaodong## ...按照题目首字母包含在对应的文件夹内 如Happy Number 则包含在H文件夹内 一般情况下使用JAVA或者Python(没办法,就这两个擅长点 注释尽量写上,题目看心情来刷,太简单的就不贴了
Number(202)!(要求全部用哈希思想实现!)(选做)(注意:在第四天会进行继续学习) 【链表】 实现单链表、循环链表、双向链表,支持增删操作 实现单链表反转 实现两个有序的链表合并为一个有序链表 实现求链表的...
判断是否为HappyNumber,输入一个数,将该数的各个位数进行平方,然后求和,再取各个位数进行平方,再求和,直到为1(此时平方求和不再改变),则为HappyNumber。如果结果是某些无限循环的非1的值,则不是Happy...
lru缓存leetcode 力扣_30天 力扣 30 天挑战赛 日 问题描述 问题和解决方案链接 Git 解决方案页面 1 SINGLE NUMBER 2 HAPPY NUMBER 3 MAXIMUM SUBARRAY 4 Move Zeroes 5 Best Time to Buy and Sell Stock II 6 GROUP ...
leetcode卡 Programming 课程设计:光城 ...Number(202)!(要求全部用哈希思想实现!)(选做)(注意:在第四天会进行继续学习) 练习: Three Sum(求三数之和) Majority Element(求众数) Missi
Number(202)!(要求全部用哈希思想实现!)(选做)(注意:在第四天会进行继续学习) 【链表】 实现单链表、循环链表、双向链表,支持增删操作 实现单链表反转 实现两个有序的链表合并为一个有序链表 实现求链表的...
04-23从Alphabet到IntegerMapping的DecryptString 2020-04-25合并两个已排序的NodeList Fibonacci 2020-04-26查找ContinuousSequence MaximunNum 2020-04-28递归多态2020-04-30 HappyNumber 2020-05-01 AddBinary ...
Number(202)!(要求全部用哈希思想实现!) 2、链表 实现单链表、循环链表、双向链表 支持增删操作 实现单链表反转 实现两个有序的链表合并为一个有序链表 实现求链表的中间结点 实现:assignment1 【任务2 - 栈、...
学习哈希表思想,并完成leetcode上的两数之和(1)及Happy Number(202)! 2. 链表 实现单链表、循环链表、双向链表,支持增删操作 实现单链表反转 实现两个有序的链表合并为一个有序链表 实现求链表的中间结点 附加...
Happy Number Ugly Number Ugly Number II Super Ugly Number Fraction to Recurring Decimal Factorial Trailing Zeroes Nim Game 模拟 Reverse Integer Palindrome Number Insert Interval Merge Intervals ...
学习哈希表思想,并完成leetcode上的两数之和(1)及Happy Number(202)!(要求全部用哈希思想实现!)(选做)(注意:在第四天会进行继续学习) 【链表】 实现单链表、循环链表、双向链表,支持增删操作 实现单链表...
学习哈希表思想,并完成leetcode上的两数之和(1)及Happy Number(202)!(要求全部用哈希思想实现!)(选做)(注意:在第四天会进行继续学习) 【链表】 实现单链表、循环链表、双向链表,支持增删操作 实现单链表...
Number(202)!(要求全部用哈希思想实现!)(选做)(注意:在第四天会进行继续学习) 链表 实现单链表、循环链表、双向链表,支持增删操作 实现单链表反转 实现两个有序的链表合并为一个有序链表 实现求链表的中间...