개발자 첫걸음/프로그래머스
[프로그래머스 level1] 최대공약수와 최소공배수
프로아마추어
2021. 10. 13. 00:07
처음에는 그냥 알고리즘을 직접 짜서 문제를 풀려고 했으나 테스트에서 어딘가 모르게 계속 실패가 발생했다.
인터넷 검색 후 유클리드 호제법이란 공식을 발견하게 되었고 소스에 바로 적용하니 쉽게 통과할 수 있었다.
class Solution {
public int[] solution(int n, int m) {
int[] answer = new int[2];
answer[0] = cal(n, m);
answer[1] = n*m/answer[0];
return answer;
}
int cal(int n, int m){
int temp = 0;
while(m!=0) {
temp = n;
n = m;
m = temp%n;
}
return n;
}
}