백준 문제풀이

2609. 최대공약수와 최소공배수 (자바, Java)

뮤츠 2022. 10. 10. 02:06

아직도 유클리드 호제법을 배우기 전이라, 그냥 브루트-포스로 무식하게 풀었다.

최대공약수는 약수 중 제일 커야하기에 위에서 아래로, 최소공배수는 배수 중 가장 작아야하기에 아래에서 위로.

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str = br.readLine();
		StringTokenizer st = new StringTokenizer(str," ");
		int x = Integer.parseInt(st.nextToken());
		int y = Integer.parseInt(st.nextToken());
		
		if (x>y) {
			int temp = x;
			x = y;
			y = temp;
		}
		
		for (int i=x; i>=1; i--) {
			if (x%i==0 && y%i==0) {
				System.out.println(i);
				break;
			}
		}
				
		int k = y;
		
		while (true) {
			
			if (k%y==0 && k%x==0) {
				System.out.println(k);
				break;
			}
			k++;
		}

	}

}

 

'백준 문제풀이' 카테고리의 다른 글

2477. 참외밭 (자바, Java)  (0) 2022.10.10
1934. 최소공배수 (자바, Java)  (0) 2022.10.10
1037. 약수 (자바, Java)  (0) 2022.10.10
5086. 배수와 약수 (자바, Java)  (0) 2022.10.10
3053. 택시 기하학 (자바, Java)  (0) 2022.10.10