상위 150개 인터뷰쉬움

해피넘버

'행복한 숫자' 문제에 대한 자세한 가이드 및 Python 구현입니다.

문제 설명

쉬움

숫자 n이 만족스러운지 확인하는 알고리즘을 작성하세요.

행복한 숫자는 다음 프로세스에 의해 정의된 숫자입니다.

- 양의 정수로 시작하여 해당 숫자의 제곱의 합으로 숫자를 바꿉니다.

- 숫자가 1이 될 때까지(그대로 유지됨) 프로세스를 반복하거나 1을 포함하지 않는 주기로 끝없이 반복됩니다.

- 이 과정이 1로 끝나는 숫자는 행복합니다.

n이 행복한 숫자이면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

isHappy(n: int) -> bool 함수를 구현하세요.

제약
  • 1 <= n <= 2^31 - 1

Example 1
Input
19
Output
True
Explanation

1^2 + 9^2 = 82. 8^2 + 2^2 = 68. 6^2 + 8^2 = 100. 1^2 + 0^2 + 0^2 = 1. Since we reached 1, 19 is a happy number.

Example 2
Input
2
Output
False
Explanation

2 -> 4 -> 16 -> 37 -> 58 -> 89 -> 145 -> 42 -> 20 -> 4 -> ... This loops forever without reaching 1.

Need a Hint?
세트나 힙과 같은 수학 및 기하학 관련 데이터 구조를 사용해 보세요.
Edge Cases to Watch
  • 빈 입력 구조
  • 단일 요소 입력
  • 큰 수치 범위

해결할 준비가 되셨나요?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

편집기에서 열기
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

권장 Python 리소스

관련 대화형 튜토리얼, 치트 시트, 코드 비교를 통해 지식을 확장하세요.