Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

동그란 도그린

BOJ 2609 - 최대공약수와 최소공배수 본문

알고리즘/문제 풀이

BOJ 2609 - 최대공약수와 최소공배수

도그rin 2023. 1. 12. 22:01

입력

  • 두 개의 자연수 (10,000 이하의 자연수)

출력

  • 첫 줄에는 두 수의 최대공약수
  • 둘째 줄에는 두 수의 최소공배수

풀이방법

  • 유클리드 호제법 이용하여 최대공약수 구하기
    • GCD(x,y) = GCD(y,r)
    • r=x%y
    • r=0일 때의 y가 최대공약수
  • 최소공배수는 (두 수의 곱)/(최대공약수)

코드

import java.io.*;
import java.util.*;

public class BOJ_2609 {
	public static int GCD(int x, int y) {
		while(y!=0) {
			int r=x%y;
			
			x=y;
			y=r;
		}
		
		return x;
	}
	
	public static void main(String[] args) throws IOException {
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st=new StringTokenizer(br.readLine());
		
		int a=Integer.parseInt(st.nextToken());
		int b=Integer.parseInt(st.nextToken());
		
		int x=a;
		int y=b;
		int gcd=GCD(x,y);
		
		System.out.println(gcd);
		System.out.println(x*y/gcd);
	}
}

'알고리즘 > 문제 풀이' 카테고리의 다른 글

BOJ 1476 - 날짜 계산  (0) 2023.01.15
BOJ 1978 - 소수 찾기  (0) 2023.01.14
BOJ 1037 - 약수  (0) 2023.01.14
BOJ 4892 - 숫자 맞추기 게임  (0) 2023.01.09
BOJ 4562 - No Brainer  (0) 2023.01.08
Comments