[Buổi 5][Củng cố vòng lặp][HW] Bài 6: Số Happy


LÀM BÀI

Points: 20
Time limit: 1.0s
Memory limit: 20M

Author:
Problem types
Allowed languages
C++

Số Happy

Bối cảnh

Trong lý thuyết số, một số hạnh phúc là một số cuối cùng đạt đến 1 khi được tính tổng bình phương của mỗi chữ số. Ví dụ, \(13\) là một con số hạnh phúc vì \(1^2 + 3^2 =10\) và \(1^2 + 0^2 =1\).

Yêu cầu

Mặt khác, \(4\) không phải là một con số hạnh phúc vì chuỗi bắt đầu bằng \(4^{2}=16\) và \(1^{2}+6^{2}=37\) và lặp lại cho đến khi được kết quả \(2^{2}+0^{2}=4\) chúng ta gặp số bắt đầu chuỗi, và do đó quá trình tiếp tục trong một chu kỳ vô hạn mà không bao giờ đạt đến \(1\) nên \(4\) không được coi là số hạnh phúc.

Hãy viết chương trình kiểm tra số nguyên dương \(N\) có phải là số hạnh phúc hay không?

Input

Một số nguyên dương \(N (1 < N < 10^{6})\).

Output

In raYes nếu số đã cho là số hạnh phúc, in ra No trong trường hợp ngược lại.

Ràng buộc

Đề gốc không nêu ràng buộc riêng.

Ví dụ 1

Input

13

Output

Yes
Ví dụ 2

Input

4

Output

No

Giải thích ví dụ

  • Ví dụ 1: 13 là số hạnh phúc vì tính tổng bình phương của các chữ số cuối cùng đạt đến số 1.
  • Ví dụ 2: 4 không phải là số hạnh phúc vì tính tổng bình phương của các chữ số rơi vào chu kỳ lặp lại mà không đạt được số 1.

Thông tin học tập

  • Buổi: B05
  • Concepts: integrated loops, tracing, simulation
  • Giới hạn kiến thức: B01-B05
  • Time limit: 1 second
  • Memory limit: 20 MB
  • Point: 20

Comments

There are no comments at the moment.

Zalo