int gcd(int a, int b){
int mod = 0;
while((mod = a % b)){
a = b;
b = mod;
}
return b;
}

이 부분을 다시 상기시켰다.

#include <cstdio>
/**
* https://www.acmicpc.net/problem/2702
* BOJ 백준온라인져지 2702 초6 수학 풀이
*/
int gcd(int a, int b){
int mod = 0;
while((mod = a % b)){
a = b;
b = mod;
}
return b;
}
int main(){
int testCase;
scanf("%d", &testCase);
while(testCase--){
int A, B;
scanf("%d%d", &A, &B);
printf("%d %d\n", A * B / gcd(A, B), gcd(A, B));
}
}
view raw BOJ_2702.cpp hosted with ❤ by GitHub

친절한 문제다.

long long을 사용하라고 문제에 나와있다.


lcm = A * B / gcd

#include <cstdio>
/**
* https://www.acmicpc.net/problem/13241
* BOJ 백준온라인져지 13241 최소공배수 풀이
*/
int gcd(long long a, long long b){
long long mod = 0;
while((mod = a % b)){
a = b;
b = mod;
}
return b;
}
int main(){
long long result = 0;
long long A, B;
scanf("%lld%lld", &A, &B);
printf("%lld", A * B / gcd(A, B));
}
view raw BOJ_13241.cpp hosted with ❤ by GitHub


+ Recent posts