[프로그래머스, 136798] 기사단원의 무기 (java)
Problem Solving/Programmers

[프로그래머스, 136798] 기사단원의 무기 (java)

728x90

https://school.programmers.co.kr/learn/courses/30/lessons/136798

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

728x90

메모리: 82 MB, 시간: 12.57 ms

사용 알고리즘: 구현

class Solution {
    public int solution(int number, int limit, int power) {
        
        // 약수 개수 구하기
        int[] count = new int[number + 1];
        int pow;
        for(int i = 1; i <= number; i++) {
            pow = 1;
            while(pow * i <= number) count[pow++ * i]++;
        }
        
        // 철의 무게 구하기
        int answer = 0;
        for(int i = 1; i <= number; i++) {
            if(count[i] > limit) answer += power;
            else answer += count[i];
        }
        
        return answer;
    }
}
728x90