【蓝桥备赛】奇妙的数字

目录

题目

思路

代码


题目

小明发现了一个奇妙的数字.它的平方和立方正好把0~9的10个数字每个用且只用了一次.你能猜出这个数字是多少吗?
请填写该数字,不要填写任何多余的内容.

思路

一个数的平方数和立方数中正好有0-9,

首先先保证这个数的平方的位数加上立方的位数总共有10位,

再判断是否符合0-9每个数都有,且只用了一次

这里用的方法是:

建立一个含0-9的列表,

分别取出平方数和立方数各个位上的数字,

先将平方的各位数在列表中删去,

然后再删立方的各位数,如果发现其中一位数在列表中找不到,则证明有重复数的存在

代码

答案为69

def judge(a,b):
    num=['0','1','2','3','4','5','6','7','8','9']
    if len(a)+len(b)<10:
        return False
    for i in a:
        if i in num:
            num.remove(i)
        else:
            return False
    for i in b:
        if i in num:
            num.remove(i)
        else:
            return False
    return True


n=1
while 1:
    a=str(n**2)
    b=str(n**3)
    if judge(a,b):
        print(n)
        break
    else:
        n+=1
        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值