[연습문제] n보다 작거나 같은 수 중 가장 큰 세제곱수 구하기
주말이라 정신없이 놀고 왔다. 머리 풀겸 쉬운 문제를 풀어보자 🤓
n보다 작거나 같은 수 중 가장 큰 세제곱수 구하기
정수 N이 주어질 때, n보다 작거나 같은 수들 중 가장 큰 세제곱수를 구하는 프로그램을 작성하라.
-1 <= n <= 200,000,000
이전의 풀이
function solve(n) {
var max = 1;
while (Math.pow(max, 3) <= n) {
max++;
}
return Math.pow(max - 1, 3);
}
약 한달전에 내가 풀었던 풀이다.
거듭 제곱을 연산하기 위해 Math.pow를 사용했다.
지금의 풀이
function ThreeSquaredMaxNum(n) {
let max = 1;
while (max ** 3 <= n) {
max++;
}
return (max - 1) ** 3;
}
console.log(ThreeSquaredMaxNum(15)); //8
console.log(ThreeSquaredMaxNum(125)); //125
이제는 가독성 향상을 위해 거듭제곱 연산자인 ** 을 활용했다.
또한 함수 이름, 변수 이름, 키워드 등을 좀 더 가독성 좋게 수정하였다.