최대 공약수와 최소 공배수를 구하는 문제이다 . 유클리드 호제법을 이용한다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Stack;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String s = bf.readLine();
String[] s1 = s.split(" ");
int number1 = Integer.parseInt(s1[0]);
int number2 = Integer.parseInt(s1[1]);
int gcd = getGCD(number1, number2);
int minMul = (number1 * number2) / gcd;
System.out.println(gcd);
System.out.println(minMul);
}
static int getGCD(int num1, int num2) {
if (num1 % num2 == 0) {
return num2;
}
return getGCD(num2,num1%num2);
}
}
'PS > 백준' 카테고리의 다른 글
백준 - 주사위 세개 (0) | 2023.11.11 |
---|---|
백준 - 최소공배수 (0) | 2023.11.10 |
백준 - 일곱 난쟁이 (0) | 2023.11.09 |
백준 - 피보나치 수 5 (1) | 2023.11.08 |
백준 - 과제 안 내신 분..? ( 5597번 ) (0) | 2023.11.06 |
댓글