leetcode(리트코드)202-Happy Number
leetcode(리트코드)202-Happy Number
leetcode 202 - Happy Number 문제입니다.
1. 문제
https://leetcode.com/problems/happy-number/
2. Input , Output
3. 분류 및 난이도
Eazy 난이도 문제입니다.
Top 100 Interview 문제입니다.
4. 문제 해석
- 1이될 때까지 자릿수에 제곱한 수를 더해 봅니다. 만약 1이 될 수 없다면 false를 리턴합니다.
- 평점이 좋지는 않은데 종료조건이 너무 명확하지 않아서 그런 것 같습니다.
5. code
c++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class Solution {
public:
long long cal(long long happy){
long long res=0;
while(happy!=0){
res += pow(happy%10,2);
happy/=10;
}
return res;
}
bool isHappy(int n) {
long long happy = n;
long long fasthappy = n;
do{
happy = cal(happy);
fasthappy = cal(fasthappy);
fasthappy = cal(fasthappy);
}while(happy != fasthappy);
return happy == 1 ? true : false;
}
};
6. 결과 및 후기, 개선점
코드에 대한 설명이 필요하신 분은 댓글을 달아주세요.!!
This post is licensed under CC BY 4.0 by the author.