日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > leetcode 202 Happy Number

leetcode 202 Happy Number

來源:程序員人生   發布時間:2015-09-23 08:18:17 閱讀次數:4156次

 

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

我的解決方案:



// happy number.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include <set> using namespace std; bool isHappy(int n) { int split = 0; int sum = 0; set<int> myset; set<int>::iterator it; while(sum != 1) { do { split = n % 10; n = n / 10; sum = split* split + sum; } while(n>0); if(sum==1) { break; } else { it=myset.find(sum); if(it!=myset.end()) { return false; } myset.insert(sum); n = sum; sum = 0; } } return true; } int _tmain(int argc, _TCHAR* argv[]) { isHappy(19); return 0; }





最短的1個代碼,用了些數論的知識吧:

https://leetcode.com/discuss/33014/4ms⑸-line-c-code


bool isHappy(int n) { while(n>6){ int next = 0; while(n){next+=(n%10)*(n%10); n/=10;} n = next; } return n==1; }



兩個python代碼:




def isHappy(self, n): return self.isHappyHelper(n, {}) def isHappyHelper(self, n, prev): if n == 1: return True elif n not in prev: prev[n] = 1 else: return False new = 0 for char in str(n): new += int(char)**2 return self.isHappyHelper(new, prev)

class Solution: # @param {integer} n # @return {boolean} def isHappy(self, n): table = [] n = self.convert(n) while n != 1: if n in table: return False else: table.append(n) n = self.convert(n) return True # @param {integer} n # @return {integer} sum of digits def convert(self, n): res = 0 while n > 0: temp = n % 10 res += temp * temp n = n // 10 return res




生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产乱妇4p交换乱免费视频 | 好叼视频 | 91精品久久久久久久久青青 | 亚洲1234区 | 久久九九国产 | 亚洲一二三四区 | 国产亚洲女人久久久久毛片 | 特级毛片在线观看 | 亚洲欧洲精品成人久久曰影片 | 日韩欧美国产一区二区 | 欧美精品福利视频 | 亚洲美女一区 | 国产成人精品综合 | 日韩一区二区三区精品 | 国产日韩精品视频 | 国产精品日韩欧美一区二区三区 | 国产伦精品一区二区三区免费迷 | 九九九九九精品 | 91麻豆精品国产91久久久久久 | 久久久久久久国产精品 | 精品久久国产字幕高潮 | 国产69精品久久久久777 | 在线观看视频一区 | 欧美不卡一区二区 | 自拍偷拍第一页 | 成人免费视频网站在线看 | 中文字幕3区 | 亚洲精品国产第一综合99久久 | 欧美日韩国产中文 | 欧美日本韩国一区二区三区 | 成人爽a毛片一区二区免费 中文在线视频观看 | 中文成人在线 | 欧美视频福利 | 久久成人免费 | 午夜在线精品偷拍 | 久热免费视频 | 成人免费淫片aa视频免费 | 在线a级毛片 | 精品专区 | 在线观看日韩精品 | 日韩精品三区 |