多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > Lettcode_202_Happy Number

Lettcode_202_Happy Number

來源:程序員人生   發布時間:2015-05-27 08:08:51 閱讀次數:3647次

本文是在學習中的總結,歡迎轉載但請注明出處:http://blog.csdn.net/pistolove/article/details/45396585


Write an algorithm to determine if a number is "happy".

A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squares of its digits, and repeat the process until the number equals 1 (where it will stay), or it loops endlessly in a cycle which does not include 1. Those numbers for which this process ends in 1 are happy numbers.

Example: 19 is a happy number

  • 12 + 92 = 82
  • 82 + 22 = 68
  • 62 + 82 = 100
  • 12 + 02 + 02 = 1


思路:

(1)題意為判斷給定的整數是不是為1個“快樂的數”,所謂快樂的數需要滿足1下幾個條件:將該整數的每一個位上的數字的平方相加得到1個新的整數,循環對新的整數進行上述操作,如果最后所得整數收斂于1,則這樣的數字為1個“快樂的數”。

(2)首先,判斷0肯定不是1個“快樂的數”;其次,對初始數字的每一個位上數的平方相加,循環進行前面的操作;需要注意的是,對可能會出現死循環的數字需要進行判斷,需要判斷循環的次數,這里通過測試得到循環次數為4,即如果4次循環進程中,每次所得數字中都不收斂于1,則判斷該數字不是1個“快樂的數”,否則,則是1個“快樂的數”;最后,對那些循環得到的結果為1的數字,直接返回true,即該數字是1個“快樂的數”。

(3)詳情見下方代碼。希望本文對你有所幫助。


算法代碼實現以下:

/** * @author liqq */ public class HappyNumber { public static boolean isHappy(int n) { if (n == 0) return false; return testhappy(0, n); } private static boolean testhappy(int number, int n) { int sum = n; int add = 0; boolean hasone = false; while (sum != 0) { int square = (sum % 10) * (sum % 10); add += square; sum = sum / 10; if (sum % 10 == 1) { hasone = true; } } number++; int test = add; while (test != 0) { if (test % 10 == 1) { hasone = true; } test = test / 10; } if (hasone == false && number > 4) return false; if (add != 1 || add % 10 != 1) { boolean istrue = testhappy(number, add); if (istrue) return true; } else { return true; } return false; } }


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲免费精品 | 国产欧美综合一区二区 | 国产一区二区三区视频在线观看 | 欧美极品videosex性欧美 | 亚洲高清视频一区 | 亚洲永久精品一区二区三区 | 亚洲欧美在线看 | 欧美黑人两根巨大挤入 | 国语精品91自产拍在线观看二区 | 欧美日韩高清一区 | 国产福利一区在线 | 最近的中文字幕视频完整 | 国产亚洲精品激情都市 | 免费ab| 国产成人久久久精品毛片 | 一级做a爱久久久久久久 | 久久久久久久99视频 | 日韩精品久久不卡中文字幕 | 国产aa网站 | 英国美女一级毛片视频 | h在线网站 | 欧美成视频| 国产乱视频在线观看播放 | 亚洲欧洲综合 | 成年人免费看的视频 | 99久久999久久久综合精品涩 | 伊人网大香 | 亚洲日韩天堂 | 国产区一区二 | 成a人v | 亚洲黄色小说图片 | 欧美一区二区在线观看视频 | 欧美精品18videosex性俄罗斯 | jizzzz日本| jizz成熟丰满中国妇女 | 性色在线播放 | 欧美精品一区二区久久 | 自拍偷拍欧美视频 | 亚洲欧美日韩在线观看看另类 | 欧美 第一页| 日本高清一区二区三区不卡免费 |