코딩테스트 문제집/Programmers(Lv1)
[Programmers] Lv1: 최대공약수와 최소공배수(12940)
cogito30
2025. 6. 25. 09:02
반응형
문제
- 링크: https://school.programmers.co.kr/learn/courses/30/lessons/12940
풀이
Java
(solution 1)
더보기
ㅇ
JavaScript
(solution 1)
더보기
const gcd = (num1, num2) => {
let tmp = num1;
if (num1 < num2) {
num1 = num2;
num2 = tmp;
}
return (num2 == 0) ? num1: gcd(num2, num1 % num2);
};
function solution(n, m) {
var answer = [];
answer.push(gcd(n, m));
answer.push((n * m) / gcd(n, m));
return answer;
}
- 유클리드 호제법을 이용해서 gcd(최대공약수) 구현
- lcm(최소공배수)의 경우 두 수를 곱하고 gcd로 나누어서 구함
(학습포인트)
- 삼항연산자
더보기
(조건식) ? 참일경우 반환값: 거짓일 경우 반환값
반응형