algorithm/문제 풀이

백준 2609번 (최대공약수와 최소공배수) 자바 Java11

ssoheeh 2021. 1. 2. 00:45

문제 : 최대공약수와 최소공배수

시간 제한 : 1 sec

메모리 제한 : 128 MB

 

 

 

 

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
import java.util.*;
 
public class Main {
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a,b;
        a = sc.nextInt();
        b = sc.nextInt();
        int result = getResult(a,b);
        System.out.println(result);
        System.out.println(getResult2(a,b,result));
    }
 
    public static int getResult2(int a, int b, int result) {
        // TODO Auto-generated method stub
        return result*(a/result)*(b/result);
    }
 
    public static int getResult(int a, int b) {
        if(b==0)
            return a;
        else
            return getResult(b,a%b);
    }
}
cs

 

 

 

getResult(int,int) 

최대 공약수 구하기

 

getResult2(int,int)

최소 공배수 구하기

 

최대 공약수는 유클리드 알고리즘 사용 ( 순환 )