-
XO鸡丝
简单测试了一下. 6*1+9*2+20*0 = 24 返回为True在输入一个25返回为False思路:先输入一个数判断这个数是否大于20, 如果不大于就在 [0,6,9,15,20]里面找,如果大于,就将他除以20的结果+1,从而限定range的取值范围.三层嵌套循环,将所有的计算结果都丢到一个列表里.用 in 来判断.
-
XO鸡丝
n = int(input(">>"))
def func(n):
list = []
if n <= 20 :
if n in [0,6,9,15,20]:
return True
else:
max_range = int(n/20)+1
for a in range(max_range+1):
for b in range(max_range+1):
for c in range(max_range+1):
p = 6*a+9*b+20*c
list.append(p)
print(list)
if n in list:
return True
else:
return False
print(func(n))
-
昵称已被禁用
我觉的是用三层for循环嵌套 将三个变量A B C一次从0开始每次加一 而且而且还要求每次的值 最后用输入的N 去和这个循环的值作比较 有相同的就返回true 没有的话就一直循环 循环结束还没有相同的就返回false 大概这个思路 不过这个题应该有个上限吧 例如N在1000以内什么的 否则这是要用天河一号来算啊
-
时间对岸
啥叫由6,9,20组成?分别能整除还是n中包含这几个数字?
-
不知乎
不是很理解你的意思,要是n是由 6 ,9,20 组成的 ,根据那个公式a,b,c都等于1不就行了