반응형
▷ 문제 : AVAILABLE LESSONS 10 - MinPerimeterRectangle (Easy)
▷ 해결 날짜 : 2022.04.20
▷ 소요 시간 : 10분
▷ 풀이 과정 :
면적이 매개변수로 주어지면 면적이 N인 직사각형의 최소 둘레를 찾는 문제이다.
예제를 보면 직사각형의 각 변은 약수의 집합으로 볼 수 있어서 이전 문제와 동일하되 수정만 조금 해주면 된다.
▷ 구현
function solution(N) {
return getDivisors(N);
}
const getDivisors = (num) => {
let min = (1 + num) * 2;
for(let i = 2 ; i <= Math.sqrt(num) ; i++){
if(num % i === 0){
let rectangle = (i + (num / i)) * 2;
if(min > rectangle) min = rectangle;
}
}
return min;
}
▷ 복기 :
일단 아직까지는 저 약수 알고리즘 기본형태를 따르면 다 풀긴 풀어진다.
반응형
댓글