File tree 1 file changed +35
-1
lines changed
1 file changed +35
-1
lines changed Original file line number Diff line number Diff line change 1
1
class Solution :
2
- def isHappy (self , n : int ) -> bool : ...
2
+ def isHappy (self , n : int ) -> bool :
3
+ current_number = n
4
+ checked_numbers = {}
5
+
6
+ while True :
7
+ number_sum = 0
8
+ for i in str (current_number ):
9
+ number_sum += int (i ) ** 2
10
+
11
+ if number_sum == 1 :
12
+ return True
13
+
14
+ if number_sum in checked_numbers :
15
+ return False
16
+
17
+ checked_numbers [number_sum ] = True
18
+ current_number = number_sum
19
+
20
+
21
+ """풀이 설명
22
+ 이 문제는 주어진 숫자가 '행복한 숫자'인지 판별하는 문제입니다. 행복한 숫자는 다음과 같은 규칙을 따릅니다.
23
+ 1. 주어진 숫자의 각 자리수를 제곱한 값을 더합니다.
24
+ 2. 위의 과정을 반복합니다.
25
+ 3. 숫자가 1이 될 때까지 반복합니다.
26
+ 4. 숫자가 1이면 '행복한 숫자'이고, 1이 아니면 '행복한 숫자'가 아닙니다.
27
+ 5. 숫자가 1이 아니더라도 반복되는 숫자가 있으면 '행복한 숫자'가 아닙니다.
28
+
29
+ 대략적인 풀이 방법은 다음과 같습니다.
30
+ 1. 주어진 숫자를 변수에 저장합니다.
31
+ 2. 반복문을 돌면서 각 자리수를 제곱한 값을 더합니다.
32
+ 3. 더한 값이 1이면 '행복한 숫자'이므로 True를 반환합니다.
33
+ 4. 더한 값이 이미 확인한 숫자라면 False를 반환합니다.
34
+ 5. 더한 값이 1이 아니라면 확인한 숫자로 추가하고 다시 반복합니다.
35
+ 6. 결과를 반환합니다.
36
+ """
You can’t perform that action at this time.
0 commit comments