Algorithm
[백준] 브1 > 최소공배수 1934번 - JAVA
흰색기린
2024. 10. 19. 11:40
알고리즘 풀이 방법입니다.
문제(Problem) -> 생각(Think) -> 해결책(Solution) -> 리뷰(Review) 를 통해서 정리해서 작성합니다.
Problem📄
제목과 동일
Think🤔
최소공배수 문제했었음
최대공약수 gcd를 구한 후
두 수의곱을 한다음 최대공약수로 나누면 그게 최소 공배수였음
gcd 최대공약수 구하는 방법
public static int gcd(int a, int b){
if(a == 0){return b;}
return gcd(a/b , a);
}
Solution✍
import java.io.IOException;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
for(int i=0; i<n; i++){
String input = br.readLine();
StringTokenizer st = new StringTokenizer(input," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
int gcdNum = gcd(a,b);
System.out.println((a * b) / gcdNum);
}
}
public static int gcd(int a,int b){
if(b == 0){return a;}
return gcd(b,a%b);
}
}
% = 나머지
Review🤩
최소공배수 , 최대공약수는 외워야 함.