python求解水仙花數(shù)的方法
本文實(shí)例講述了python求解水仙花數(shù)的方法。分享給大家供大家參考。具體如下:
一個(gè)N位的十進(jìn)制正整數(shù),如果它的每個(gè)位上的數(shù)字的N次方的和等于這個(gè)數(shù)本身,則稱其為花朵數(shù)。
#!/usr/bin/python
def get_flower(n, ofile):
D_pow=[pow(i,n) for i in range(0,10)]
V_min=1*pow(10,n-1)
V_max=sum((9*pow(10,x) for x in range(0,n)))
T_count=0
print D_pow, V_max, V_min
nums=[1]+[0]*(n-1)
print 'Start:', nums
idx=n-1
tmp_l=[0]*10
while True:
nums[idx]+=1
if nums[idx]<10:
j=idx+1
while j<n:
nums[j]=nums[idx] # reset
j+=1
v=sum((D_pow[x] for x in nums))
if v<=V_max and v>=V_min:
T_count+=1
#test if is flower
#print 'do test:', ''.join(map(str,nums))
k=0
while k<10:
tmp_l[k]=0
k+=1
N=0
for k in nums:
tmp_l[k]+=1
N+=1
while N>0:
p=v%10
if tmp_l[p]>0:
tmp_l[p]-=1
N-=1
else:
break
v/=10
if N==0:
print >>ofile, 'hit', sum((D_pow[x] for x in nums))
idx=n-1
elif idx==0:
print 'done'
break
else:
idx-=1
print 't_count', T_count
if __name__ == '__main__':
with file('./f.txt', 'wb') as o:
get_flower(21, o)
#get_flower(3, o)
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
- python實(shí)現(xiàn)水仙花數(shù)實(shí)例講解
- python輸入一個(gè)水仙花數(shù)(三位數(shù)) 輸出百位十位個(gè)位實(shí)例
- python打印n位數(shù)“水仙花數(shù)”(實(shí)例代碼)
- python使用循環(huán)打印所有三位數(shù)水仙花數(shù)的實(shí)例
- Python判斷一個(gè)三位數(shù)是否為水仙花數(shù)的示例
- Python一句代碼實(shí)現(xiàn)找出所有水仙花數(shù)的方法
- Python語(yǔ)言生成水仙花數(shù)代碼示例
- Python實(shí)例練習(xí)水仙花數(shù)問題講解
相關(guān)文章
Python多線程編程(二):?jiǎn)?dòng)線程的兩種方法
這篇文章主要介紹了Python多線程編程(一):?jiǎn)?dòng)線程的兩種方法,本文講解了將函數(shù)傳遞進(jìn)Thread對(duì)象、繼承自threading.Thread類兩種方法,需要的朋友可以參考下2015-04-04
Pycharm 2to3配置,python2轉(zhuǎn)python3方式
這篇文章主要介紹了Pycharm 2to3配置,python2轉(zhuǎn)python3方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
Python 文件操作技巧(File operation) 實(shí)例代碼分析
python遍歷文件夾和文件 perl分割路徑和文件名2008-08-08
Python的requests網(wǎng)絡(luò)編程包使用教程
requests包為Python擴(kuò)展了各種基于HTTP的網(wǎng)絡(luò)數(shù)據(jù)操作功能,包括各種請(qǐng)求與session和cookie等的追加,very強(qiáng)大,下面我們就來看一下Python的requests網(wǎng)絡(luò)編程包使用教程2016-07-07
解決pandas.DataFrame.fillna 填充Nan失敗的問題
今天小編就為大家分享一篇解決pandas.DataFrame.fillna 填充Nan失敗的問題。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-11-11

