프로그래머스 - Lv.2 N개의 최소공배수 본문
반응형
며칠 간 filter / some / map 등과 같은 배열함수와 이중 반복문으로 풀려다가 의외로 단순히 풀렸다.
2,6,8 의 최소공배수나, 12, 8의 최소공배수가 같다는 특징때문이었는데,
이 덕분에 이전에 사용해봤던 알고리즘으로 최소공배수를 구하는 유클리드 호제법을 콜백 함수로 활용했다.
function solution(arr) {
function callback(n, m) { // 유클리드 호제법
let a = n
let b = m
while (b !== 0){
let temp = a%b
a = b
b = temp
}
return (n*m)/a
}
let result = arr.reduce((a,c)=>{
return callback(a,c) // 콜백
},1)
return result
}
반응형
'개발 > algorithm' 카테고리의 다른 글
mySQL 쿼리문 coalece / date_format / order by, having (0) | 2023.05.16 |
---|---|
프로그래머스 - 200문제 풀이 기념 (0) | 2023.03.12 |
프로그래머스 - Lv.1 문자열과 영단어 / 정규표현식 간단한 활용 (대체) (0) | 2023.02.09 |
프로그래머스 - Lv1. 실패율 / Object.entries() (0) | 2023.01.29 |
프로그래머스 - 100문제 풀이 기념 (0) | 2023.01.25 |
Comments