NC236934. 第三心脏
描述
输入描述
本题有多组数据。
第一行一个正整数 ,表示数据组数。
对于每组数据:
仅一行,依次输入两个正整数 。
输出描述
对于每一组数据输出一行,即符合要求的最小的正整数 。
示例1
输入:
4 3 6 7 2 12 60 114514 1919810
输出:
9 21 24 229028
C++ 解法, 执行用时: 59ms, 内存消耗: 556K, 提交时间: 2022-05-13 19:12:49
#include<bits/stdc++.h> using namespace std; int main(){ long long a,b,c,i; int T;cin>>T; for(int q=1;q<=T;q++){ cin>>a>>b; for(c=2*a;;c=c+a){ if(gcd(a,b)==gcd(b,c)) break; } cout<<c<<endl; } }
pypy3 解法, 执行用时: 325ms, 内存消耗: 28736K, 提交时间: 2022-05-13 22:22:56
from math import gcd for _ in range(int(input())): a, b = map(int, input().split()) c = 2 * a while True: if gcd(a, b) == gcd(b, c): break c += a print(c)
Python3 解法, 执行用时: 168ms, 内存消耗: 5048K, 提交时间: 2022-05-15 23:55:31
from math import gcd for _ in range(int(input())): a,b=map(int,input().split()) k=2 while gcd(a,b)!=gcd(b,k*a): k+=1 print(k*a)