回分類題庫
d194: 991CP1 Tiny Contest G - Aidnap的減肥計劃
出處:

Difficulity : 1
Accepted : 31 Times | Submit :54 Times | Clicks : 1169
Accepted : 24 Users | Submit : 26 Users | Accepted rate : 92%
Time Limit :10000 ms | Memory Limit : 64000 KBytes
題目加入時間 : 2010-12-07 16:16

Content :

Aidnap是胖達的好兄弟,他們兩個時常一同出外尋找美食。
但最近Aidnap覺得自己變的有點胖,想要減肥。

於是他就跟胖達約法三章說,在每次要外出吃大餐前,先讓電腦隨機給他一個正整數,
如果隨機出來的數字是一個Happy number的話,他說跟胖達一起出去吃東西,否則就留在家裡節食。

而Aidnap定義他的Happy number的方法如下:
正整數S0中每個位數的平方和為S1。
以相同的方法我們定義S1中每個數字的平方和為S2,並依此類推。
假如有某個Si = 1( i >= 1)則我們說S0是一個Happy number。
如果某一個數不是Happy number,那他就是一個 Unhappy number。

例如: 7 是一個 Happy number,因為 7 -> 49 -> 97 ->130 -> 10 -> 1。
       49 => 4^2 + 9^2 = 97
           97 => 9^2 + 7^2 = 130
          130 => 1^2 + 3^2 = 10
           10 => 1^2 = 1

但是 4 是一個Unhappy number,因為 4 -> 16 -> 37 -> 58 -> 89 -> 145 -> 42 -> 20 -> 4,永遠也無法產生  1。

Input :

輸入的第一列有一個整數代表以下有多少組測試資料。
每組測試資料一列含有1個正整數N( N < 10^9)。

Output :

對每組測試資料輸出一列,輸出這是第幾組測試資料,以及N為 Happy number 或 Unhappy number。輸出格式請參考Sample Output。

Sample Input :

3
7
4
13

Sample Output :

Case #1: 7 is a Happy number.
Case #2: 4 is an Unhappy number.
Case #3: 13 is a Happy number.

Hint :

當成字串輸入時,一格一格的字元可以拿來當成數字運算,會比較容易進行

Author :


  Solve it!   Status Forum (0)

C++
C
JAVA
91593. oop104701033 (6 ms , 754KB)
72449. alun0922 (6 ms , 350KB)
47701. sy2es956304 (6 ms , 388KB)
42598. joe59491 (6 ms , 378KB)
42587. david942j (6 ms , 286KB)
54837. ag100 (2 ms , 234KB)
51476. david (2 ms , 226KB)
51325. uglyman (2 ms , 238KB)
54835. ag100 (4 ms , 228KB)
30899. cp99703036 (4 ms , 236KB)
87430. a6205 (98 ms , 938KB)
50476. nwgs524513cja (116 ms , 202KB)

執行時間會受很多因素影響因此僅供參考,主機等級請看這裡