国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

IdentifySmithNumbers

2019-11-14 17:11:30
字體:
來源:轉載
供稿:網友

Link:

  https://www.hackerrank.com/challenges/identify-smith-numbers

 

 1 def sum_digits(n): 2     return sum(int(x) for x in str(n)) 3  4 def PRime_factors(n): 5     factors = [] 6     for i in xrange(2, n): 7         if i*i > n: 8             break 9         elif n % i == 0: # 短除法核心10             while n % i == 0:11                 factors.append(i)12                 n /= i13     if n > 1:14         factors.append(n) 15     return factors16 17 n = int(raw_input())18 19 factors = prime_factors(n)20 print '1' if len(factors) > 1 and sum_digits(n) == sum(sum_digits(x) for x in factors) else '0'

 

 

本題
  “數論” -- “質因子分解”
學習到
  如何理解(讀)代碼
    哪里是代碼的核心,哪里是代碼的邊緣可變的、靈活的  
      比如 n % i == 0 這里就是“短除法”的判斷核心
      而if i * i > n, 這種就是減少判斷次數的外圍
      if和while層疊的順序也是靈活可變的
算法整體
  get了《算法導論》


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 靖西县| 麻江县| 民县| 昭苏县| 南川市| 马边| 英吉沙县| 探索| 五华县| 敦化市| 敖汉旗| 内黄县| 静安区| 五常市| 旅游| 娄烦县| 裕民县| 凤冈县| 什邡市| 尉氏县| 巴彦淖尔市| 古田县| 罗山县| 盐边县| 丽水市| 鲁山县| 宿迁市| 修水县| 安化县| 芒康县| 谢通门县| 长子县| 湘阴县| 旬阳县| 景德镇市| 嘉定区| 天全县| 南皮县| 阳西县| 绥阳县| 高邑县|