给定两个数a和b,我们必须找到可被a或b整除的第n个数
格式如下:
输入:
第一行由一个整数T组成,表示测试用例的数量。
第二行包含三个整数a、b和N
输出:
对于每个测试用例,打印第n个
换行中的数字。在
约束:
1≤t≤105
1≤a,b≤104
1≤N≤10
样本输入
1
2 3 10个
样本输出
十五
说明
可被2整除的数
或3是:2,3,4,6,8,9,10,12,14,15,第10个数字是15
我的代码test_case=input()
if int(test_case)<=100000 and int(test_case)>=1:
for p in range(int(test_case)):
count=1
j=1
inp=list(map(int,input().strip('').split()))
if inp[0]<=10000 and inp[0]>=1 and inp[1]<=10000 and inp[1]>=1 and inp[1]<=1000000000 and inp[1]>=1:
while(True ):
if count<=inp[2] :
k=j
if j%inp[0]==0 or j%inp[1] ==0:
count=count+1
j=j+1
else :
j=j+1
else:
break
print(k)
else:
break
问题陈述:
对于输入2000,3000,100000的单个测试用例,它需要一秒钟以上的时间来完成。我想如果我能在不到1秒钟内得到结果。有没有一种高效的方法来解决这个问题,也许我们可以在这里使用一些数据结构和算法??在