成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Kata: 將給定自然數(shù)的所有位相加直到數(shù)字最后只剩一位

孫淑建 / 576人閱讀

摘要:首先假設(shè)有一個(gè)四位數(shù)為,四位分別為,則得到一個(gè)數(shù),我們使它遞歸到最后只剩一位數(shù)字,假設(shè)為,則所以數(shù)字所有位數(shù)遞歸累加至一位時(shí)的結(jié)果為回頭再看別人的解法還是一臉茫然,因?yàn)閷?duì)操作符的運(yùn)行順序不明白。

將給定自然數(shù)的所有位相加直到數(shù)字最后只剩一位。

16 => 1 + 6 => 7;
942 => 9 + 4 + 2 => 15 => 1 + 5 => 6
132189 => 1 + 3 + 2 + 1 + 8 + 9 => 24 => 2 + 4 => 6

看了別人給出的解法:

num % 9 or n and 9

看得我一臉茫然,不知道發(fā)生了什么,在網(wǎng)上查找了一番理解了下這個(gè)算法。

首先假設(shè)有一個(gè)四位數(shù)為n,四位分別為a、b、c、d,則:

n % 9
= (999a + 99b + 9c + a + b + c + d) % 9
= (a + b + c + d) % 9

(a + b + c + d)得到一個(gè)數(shù),我們使它遞歸到最后只剩一位數(shù)字,假設(shè)為k,則:

n % 9 = k % 9

所以數(shù)字n所有位數(shù)遞歸累加至一位時(shí)的結(jié)果k為:

if n % 9 == 0:
    k = 9
elif n == 0:
    k = 0
else:
    k = n % 9

回頭再看別人的解法:

num % 9 or n and 9

還是一臉茫然,因?yàn)閷?duì)操作符的運(yùn)行順序不明白。又去查了下:

Operation Result
x or y if x is false, then y, else x
x and y if x is false, then x, else y
not x if x is false, then True, else False

優(yōu)先級(jí)關(guān)系:or < and < not,同一優(yōu)先級(jí)默認(rèn)從左往右計(jì)算

再回頭看別人的解法,應(yīng)該是這樣:

num % 9 or (n and 9)

所以,這種還是多加括號(hào),免得產(chǎn)生歧義,或者把我這種小白繞暈。

以下為參考鏈接

https://segmentfault.com/q/10...

http://blog.csdn.net/qq_28267...

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/40942.html

相關(guān)文章

  • 查找算法——JS算法實(shí)現(xiàn)

    摘要:查找表查找表相關(guān)概念查找表是由同一類型的數(shù)據(jù)元素或記錄構(gòu)成的集合。由于集合中的數(shù)據(jù)元素之間存在著完全松散的關(guān)系,因此查找表是一種非常靈便的數(shù)據(jù)結(jié)構(gòu)。缺點(diǎn)平均查找長度較大。索引順序表的查找若以索引順序表表示靜態(tài)查找表,則查找可以用分塊查找。 查找表 search table 查找表相關(guān)概念 查找表是由同一類型的數(shù)據(jù)元素(或記錄)構(gòu)成的集合。由于集合中的數(shù)據(jù)元素之間存在著完全松散的關(guān)系,因...

    sihai 評(píng)論0 收藏0
  • 查找算法——JS算法實(shí)現(xiàn)

    摘要:查找表查找表相關(guān)概念查找表是由同一類型的數(shù)據(jù)元素或記錄構(gòu)成的集合。由于集合中的數(shù)據(jù)元素之間存在著完全松散的關(guān)系,因此查找表是一種非常靈便的數(shù)據(jù)結(jié)構(gòu)。缺點(diǎn)平均查找長度較大。索引順序表的查找若以索引順序表表示靜態(tài)查找表,則查找可以用分塊查找。 查找表 search table 查找表相關(guān)概念 查找表是由同一類型的數(shù)據(jù)元素(或記錄)構(gòu)成的集合。由于集合中的數(shù)據(jù)元素之間存在著完全松散的關(guān)系,因...

    cheng10 評(píng)論0 收藏0
  • 重學(xué)計(jì)算機(jī)組成原理(十)- "燙燙燙"亂碼由來

    摘要:而大寫字母,就是第個(gè),也就是二進(jìn)制的,對(duì)應(yīng)的十六進(jìn)制表示就是。在中文世界里,最典型的就是手持兩把錕斤拷,口中疾呼燙燙燙的典故。既然今天要徹底搞清楚編碼知識(shí),我們就來弄清楚錕斤拷和燙燙燙的來龍去脈。參考深入淺出計(jì)算機(jī)組成原理 showImg(https://image-static.segmentfault.com/206/872/2068726052-5d5922b2effb9_art...

    wenzi 評(píng)論0 收藏0
  • 由left-pad扯到JS中運(yùn)算

    摘要:原碼補(bǔ)碼和反碼原碼一個(gè)數(shù)在計(jì)算機(jī)中是以二進(jìn)制的形式存在的,其中第一位存放符號(hào)正數(shù)為負(fù)數(shù)為。中的位運(yùn)算在中按位操作符會(huì)將其操作數(shù)轉(zhuǎn)成補(bǔ)碼形式的有符號(hào)位整數(shù)。原文鏈接由扯到中的位運(yùn)算 這個(gè)話題的由來是2016年3月份的時(shí)候 NPM 社區(qū)發(fā)生了‘left-pad’事件,不久后社區(qū)就有人發(fā)布了用來補(bǔ)救的,也是現(xiàn)在大家能用到的 left-pad 庫。 最開始這個(gè)庫的代碼是這樣的。 module....

    LeoHsiun 評(píng)論0 收藏0
  • JavaScript常用腳本集錦7

    摘要:將加法和加上校驗(yàn)位能被整除。下面分別分析出生日期和校驗(yàn)位檢查生日日期是否正確輸入的身份證號(hào)里出生日期不對(duì)將位身份證轉(zhuǎn)成位校驗(yàn)位按照的規(guī)定生成,可以認(rèn)為是數(shù)字。校驗(yàn)位按照的規(guī)定生成,可以認(rèn)為是數(shù)字。表示全部為中文為不全是中文,或沒有中文。 判斷是否是合理的銀行卡卡號(hào) //Description: 銀行卡號(hào)Luhm校驗(yàn) //Luhm校驗(yàn)規(guī)則:16位銀行卡號(hào)(19位通用): // 1.將...

    lindroid 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<