프로그래머스 LEVEL 1(기사단원의 무기)
-
사용 언어 : javascript
-
해결 날짜 : 2022-11-18
- 해결 방법 :
- number를 돌며 각 기사의 약수의 개수가 limit보다 큰 경우 answer에 power 추가
- 그 외의 경우 answer에 약수의 개수 추가
- 회고 :
- x
-
코드
const getDivisorsLength = (num) => { const divisors = []; for (let i = 1 ; i <= Math.sqrt(num) ; i++){ if (num % i === 0) { divisors.push(i); if (num / i !== i) divisors.push(num / i); } } return divisors.length; } function solution(number, limit, power) { let answer = 0; for (let i = 1; i <= number; i++) { const divisorsLength = getDivisorsLength(i); answer += divisorsLength > limit ? power : divisorsLength; } return answer; }
- 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges