python怎样用函数求水仙花数_python求解水仙花数的方法

本文实例讲述了python求解水仙花数的方法。分享给大家供大家参考。具体如下:

一个N位的十进制正整数,如果它的每个位上的数字的N次方的和等于这个数本身,则称其为花朵数。

#!/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

=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

>0:

tmp_l

-=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)

希望本文所述对大家的Python程序设计有所帮助。

微信

分享

相关标签:python 水仙花数

本文原创发布php教程 ,转载请注明出处,感谢您的尊重!

上一篇:python学习数据结构实例代码

下一篇:pymongo为mongodb数据库添加索引的方法

相关文章

相关视频

在Django框架中运行Python应用全攻略

在Python的Django框架中创建和使用模版

python获取元素在数组中索引号的方法

浅谈python中截取字符函数strip,lstr...

python求解水仙花数的方法

Python 简介

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值