본문 바로가기

프로그래머스

Lv1 최대공약수와 최소공배수

문제요약

두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하라

 

입출력

n m return
3 12 [3,12]
2 5 [1,10]

 

문제풀이

import java.util.*;
class Solution {
    public int[] solution(int n, int m) {
        int[] answer = new int[2];
        
        answer[0] = test(n,m);
        answer[1] = n * m / answer[0];
        
        return answer;
    }
    
    public int test(int a, int b){
        
        while(b != 0){
            int temp = a % b;
            a = b ;
            b = temp;
        }
        
        return a;
    }
}

 

최대공약수를 구하는 test() 메서드를 만들었다.

최소공배수는 두 수의 곱 나누기 최대공약수 이다.