题解 | #变种水仙花#

变种水仙花

http://www.nowcoder.com/practice/c178e3f5cc4641dfbc8b020ae79e2b71

for a in range(1,10):
    for b in range(0,10):
        for c in range(0,10):
            for d in range(0,10):
                for e in range(0,10):
                    if a*(b*1000+c*100+d*10+e)+(a*10+b)*(c*100+d*10+e)+(a*100+b*10+c)*(d*10+e)+(a*1000+b*100+c*10+d)*e==a*10000+b*1000+c*100+d*10+e:
                        print(a*10000+b*1000+c*100+d*10+e,end=" ")
  • 一开始想到了 是否切片可以做,但是没有动太多脑筋。凭着最耿直的最笨的方法先写出来了哈哈哈。
  • 果然大神里有用切片的——不禁感慨切片真是好用啊!
  • 我自己也再写一下。
  • 下面的方法真是妙啊,str把整数强制转换为字符型,然后做切片和做数值比较就方便很多。
for i in range(10000,100000):
    str_i=str(i)
    sum=0
    for j in range(1,5):   #要在中间取4次
        sum=sum+int(str_i[:j])*int(str_i[j:])
        
    if sum==i:
        print(sum,end=" ")
全部评论

相关推荐

uu们,拒offer时hr很生气怎么办我哭死
爱睡觉的冰箱哥:人家回收你的offer,或者oc后没给你发offer的时候可不会愧疚你,所以你拒了也没必要愧疚他。
点赞 评论 收藏
分享
05-09 14:45
门头沟学院 Java
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务