백준 문제풀기/JAVA
[백준 13241 JAVA 자바] 최소공배수
냉동피자
2023. 8. 26. 01:41
최소 공배수는
두 수의 배수중 가장 작은 수 입니다
수학적으로 보면
두수의 곱 나누기 최대공약수 입니다
최대 공약수는
두 수의 약수중 가장 큰 수 입니다
약수를 알기 위해선 소수로 나눠봐야합니다
코드입니다
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String line = br.readLine();
StringTokenizer st = new StringTokenizer(line);
long a = Long.parseLong(st.nextToken());
long b = Long.parseLong(st.nextToken());
System.out.println(a*b/gcd(a,b));
}
static long gcd(long a, long b) {
while (b != 0) {
long r = a%b;
a=b;
b=r;
}
return a;
}
}
최대 공약수를 구하는 gcd 함수를 구현하여서
두 수의 곱에 나눴습니다