최대공약수와 최소공배수
문제
https://programmers.co.kr/learn/courses/30/lessons/12940
코딩테스트 연습 - 최대공약수와 최소공배수
두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의
programmers.co.kr
코드
class Solution {
public int[] solution(int n, int m) {
int[] result = new int[2];
int min_num = Math.min(n, m);
int max_num = Math.max(n, m);
if (max_num % min_num == 0) {
result[0] = min_num;
} else {
result[0] = gcd(max_num, min_num);
}
result[1] = min_num * max_num / result[0];
// System.out.println(Arrays.toString(result));
return result;
}
public int gcd(int max_num, int min_num) {
if (max_num % min_num == 0) {
return min_num;
}
return gcd(min_num, max_num % min_num);
}
}
'프로그래머스 > LEVEL 1' 카테고리의 다른 글
[프로그래머스/LEVEL1] 나머지가 1이 되는 수 찾기 (0) | 2022.01.19 |
---|---|
[프로그래머스/LEVEL1] K번째수 (0) | 2022.01.19 |
[프로그래머스/LEVEL1] 예산 (0) | 2022.01.19 |
[프로그래머스/LEVEL1] 약수의 합 (0) | 2022.01.19 |
[프로그래머스/LEVEL1] 약수의 개수와 덧셈 (0) | 2022.01.19 |