Write a function, persistence, that takes in a positive parameter num and returns its multiplicative persistence, which is the number of times you must multiply the digits in num until you reach a single digit. For example: persistence(39) => 3 # Because 3*9 = 27, 2*7 = 14, 1*4=4 # and 4 has only one digit. persistence(999) => 4 # Because 9*9*9 = 729, 7*2*9 = 126, # 1*2*6 = 12, and finally 1*2 = 2. persistence(4) => 0 # Because 4 is already a one-digit number.
def persistence(n): times = 0 if n < 10: return times while True: times += 1 r = 1 while n > 0: r *= n % 10 n /= 10 if r < 10: return times else: n = r
def persistence(n): i = 0 while n>=10: n = reduce(lambda x,y:x*y, [int(x) for x in str(n)]) i += 1 return i
1. 對(duì)一組數(shù)連續(xù)作用某個(gè)函數(shù)用reduce方法。 2. 把字符串轉(zhuǎn)換成數(shù)字list用[int(x) for x in str(n)])
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/41658.html
摘要:提醒設(shè)計(jì)組件時(shí),一般都按照把控大局,再設(shè)計(jì)好每個(gè)小組件的規(guī)律。本節(jié)內(nèi)容完畢下節(jié)內(nèi)容基礎(chǔ)之組件篇三將講解設(shè)計(jì)復(fù)合組件。 設(shè)計(jì)復(fù)合組件 showImg(https://segmentfault.com/img/remote/1460000015798841); 前言 你問我為什么寫博客? 因?yàn)榘⒗辜訍蹖慴ugger!!! 微信公眾號(hào):愛寫bugger的阿拉斯加如有問題或建議,請(qǐng)往公眾號(hào),...
摘要:微信公眾號(hào)愛寫的阿拉斯加如有問題或建議,請(qǐng)后臺(tái)留言,我會(huì)盡力解決你的問題。而技術(shù)內(nèi)幕是基于的項(xiàng)目的講解。有興趣的朋友可以掃下方二維碼公眾號(hào)愛寫的阿拉斯加分享開發(fā)相關(guān)的技術(shù)文章,熱點(diǎn)資源,全棧程序員的成長(zhǎng)之路和大家一起交流成長(zhǎng)。 微信公眾號(hào):愛寫bugger的阿拉斯加如有問題或建議,請(qǐng)后臺(tái)留言,我會(huì)盡力解決你的問題。 前言 此文章是我最近在看的【W(wǎng)ebKit 技術(shù)內(nèi)幕】一書的一些理解和做...
摘要:書接上文瀏覽器之硬件加速機(jī)制本章主要講解中廣泛使用的引擎和引擎。解釋器在某些引擎中,解釋器主要是接收字節(jié)碼,解釋執(zhí)行這個(gè)字節(jié)碼,同時(shí)也依賴?yán)厥諜C(jī)制等。 showImg(https://segmentfault.com/img/remote/1460000016359609); 微信公眾號(hào):愛寫bugger的阿拉斯加如有問題或建議,請(qǐng)后臺(tái)留言,我會(huì)盡力解決你的問題。 前言 此文章是我...
摘要:書接上文瀏覽器內(nèi)核之渲染基礎(chǔ)硬件加速基礎(chǔ)概念硬件加速技術(shù)是指使用的硬件能力為幫助渲染網(wǎng)頁(yè),在為的作用主要是用來繪制圖形并且性能特別好。包含的節(jié)點(diǎn)表示的是使用硬件加速的元素或者技術(shù)。 showImg(https://segmentfault.com/img/remote/1460000016348971); 微信公眾號(hào):愛寫bugger的阿拉斯加如有問題或建議,請(qǐng)后臺(tái)留言,我會(huì)盡力解決你...
摘要:多線程的主要目的就是為了保持用戶界面的高響應(yīng)度,保證線程進(jìn)程中的主線程不會(huì)被任何其他費(fèi)用時(shí)的操作阻礙從而影響了對(duì)用戶操作的響應(yīng)。 showImg(https://segmentfault.com/img/remote/1460000016113034); 微信公眾號(hào):愛寫bugger的阿拉斯加如有問題或建議,請(qǐng)后臺(tái)留言,我會(huì)盡力解決你的問題。 前言 此文章是我最近在看的【W(wǎng)ebKit ...
閱讀 1273·2021-11-23 09:51
閱讀 1633·2021-11-16 11:45
閱讀 4050·2021-10-09 09:43
閱讀 2691·2021-07-22 16:47
閱讀 951·2019-08-27 10:55
閱讀 3454·2019-08-26 17:40
閱讀 3093·2019-08-26 11:39
閱讀 3235·2019-08-23 18:39