题目:
解题思路:
通过迭代的方式来找到一个正整数n,该数满足一系列特定的余数条件。首先定义一个函数求一个数组里面的最小公倍数,然后循环遍历模数和余数,看是否满足条件,最后找到要求的n值。
程序代码:
import math
count=[i for i in range(2,50)]
remainders=[1,2,1,4,5,4,1,2,9,0,5,10,11,14,9,0,11,18,9,11,11,15,17,9,23,20,25,16,29,27,25,11,17,4,29,22,37,23,9,1,11,11,33,29,15,5,41,46]
n=1
i=0
arr=[]
def Min(arr):
x=1
for i in arr:
x=x*i//math.gcd(x,i)
return x
while i<48:
if n%count[i]==remainders[i]:
arr.append(count[i])
i+=1
else:
n+=Min(arr)
print(n)
运行结果: