반응형
1934번
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(br.readLine());
for (int i = 0; i < T; i++) {
String[] inputs = br.readLine().split(" ");
int A = Integer.parseInt(inputs[0]);
int B = Integer.parseInt(inputs[1]);
int gcd = euclid(A, B); // 유클리오드 호제법으로 구한 최대공약수
bw.write(String.valueOf(A * B / gcd));
bw.newLine();
}
bw.flush();
bw.close();
}
private static int euclid(int a, int b) {
if (a % b == 0) { // 최대 공약수를 구한경우
return b;
} else {
int newA = a % b;
return euclid(b, newA);
}
}
}
정답을 맞춘 풀이방법
1 . 유클리오드 호제법을 사용해 최대공약수(gcd)를 먼저 구함
2. 기존의 수와 최대공약수를 계산하여 최소공보수를 입력후 출력함
반응형
'알고리즘 > 백준 문제[추후 옮길예정]' 카테고리의 다른 글
[JAVA] 백준 1676번 (0) | 2021.05.16 |
---|---|
[JAVA] 백준 6588번 (0) | 2021.05.15 |
[JAVA] 백준 2609번 (0) | 2021.05.15 |
[JAVA] 백준 11656번 (0) | 2021.05.13 |
[JAVA] 백준 10824번 (0) | 2021.05.13 |