Phỏng vấn top 150Dễ dàng

Số hạnh phúc

Hướng dẫn chi tiết và cách thực hiện Python cho bài toán 'Con số hạnh phúc'.

Tuyên bố vấn đề

Dễ dàng

Viết thuật toán xác định xem số n có thỏa mãn không.

Số hạnh phúc là số được xác định theo quy trình sau:

- Bắt đầu bằng số nguyên dương bất kỳ, thay số đó bằng tổng bình phương các chữ số của nó.

- Lặp lại quy trình cho đến khi số bằng 1 (nơi nó sẽ ở lại) hoặc lặp lại vô tận trong một chu kỳ không bao gồm 1.

- Những số mà quá trình này kết thúc bằng 1 là số hạnh phúc.

Trả về true nếu n là số hạnh phúc và sai nếu không.

Triển khai hàm isHappy(n: int) -> bool.

Ràng buộc
  • 1 <= n <= 2^31 - 1

Ví dụ

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?
Hãy cân nhắc sử dụng các cấu trúc dữ liệu dành riêng cho Toán học & Hình học như tập hợp hoặc đống.
Edge Cases to Watch
  • Cấu trúc đầu vào trống
  • Đầu vào phần tử đơn
  • Giới hạn số lớn

Sẵn sàng để giải quyết?

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

Mở trong Trình chỉnh sửa
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

Tài nguyên Python được đề xuất

Mở rộng kiến thức của bạn với các hướng dẫn tương tác, bảng ghi chú và so sánh mã có liên quan.