https://school.programmers.co.kr/learn/courses/30/lessons/12940
class Solution {
public int[] solution(int n, int m) {
int[] answer = new int[2];
// 두 수에서 더 큰 수를 n으로 지정
if(n < m) {
int temp = n;
n = m;
m = temp;
}
// 최대공약수 구하기
answer[0] = gcd(n, m);
// 최소공배수 구하기 (두수의곱 / 최대공약수)
answer[1] = n * m / answer[0];
return answer;
}
// 최대공약수 구하는 함수 (유클리드 호제법)
int gcd(int n, int m) {
int r;
while(m > 0) {
r = n % m;
n = m;
m = r;
}
return n;
}
}
'코딩테스트 > 코딩테스트 문제풀이' 카테고리의 다른 글
| [Java] 프로그래머스 <시저 암호> (0) | 2025.03.06 |
|---|---|
| [Java] 프로그래머스 <삼총사> (0) | 2025.03.06 |
| [Java] 프로그래머스 <정수 제곱근 판별> (0) | 2025.03.01 |
| [Java] 프로그래머스 <자연수 뒤집어 배열로 만들기> (0) | 2025.03.01 |
| [Java] 프로그래머스 <모의고사> (0) | 2025.02.28 |