思路
求最小公倍数,怕他越界所以用了int128。
代码
#include<bits/stdc++.h>
#define int __int128
using namespace std;
int t,x,y;
inline void read(int &data){
int x=0;char ch=getchar();
while(ch<'0'||ch>'9') ch=getchar();
while(ch>='0'&&ch<='9'){
x=x*10+ch-'0';
ch=getchar();
}
data=x;
}
int gcd(int a,int b){
if(!b) return a;
return gcd(b,a%b);
}
inline void write(int x){
if(x>9){
write(x/10);
}
putchar(x%10+'0');
}
signed main(){
read(t);
for(int i=1;i<=t;i++){
read(x);read(y);
int gd=gcd(x,y);
printf("Case %d: ",i);
write(x/gd*y);
putchar('\n');
}
return 0;
} 
京公网安备 11010502036488号