返回题解分享
讨论 / 题解分享/ 帖子详情

幸运数字(结果填空) - 题解

Python代码

def lucky_find(n):
	x = 1#遍历数
	need=0#检测数/已满足需求数
	mapping = {
		2: 0,
		8: 1,
		10: 2,
		16: 3}#映射字典
	while n>need:
		sum_x = [0] * 4
		for i in [2,8,10,16]:
			p=x
			while p:
				sum_x[mapping[i]]+=p%i
				p//=i
			if x%sum_x[mapping[i]]:break#如果存在任意一个进制不是哈沙德数,就跳出
		else:need+=1
		x += 1
	return x-1
lucky_number = lucky_find(2023)
print(f"第2023个幸运数字的十进制表示为:{lucky_number}")
0 回复 0 转发 1 喜欢 0 阅读
回复 (0)
默认 最新
暂无回复,快来抢沙发!