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

0

프로그래머스

목록 보기
98/128
post-thumbnail

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

풀이

class Solution {
    fun getKnightPower(number:Int):Array<Int>{
        //knightPower[i]: i의 약수의 개수
        var knightPower = Array(number+1, {it->0})
        for(i in 1..number){
            knightPower[i] = knightPower[i]+1
            for(j in i+i..number step i) knightPower[j] = knightPower[j]+1
        }
        return knightPower
    }
    
    fun solution(number: Int, limit: Int, power: Int): Int {
        //필요한 철의 무게의 합 = 필요한 무기의 공격력의 합
        var answer: Int = 0
        val knightPower = getKnightPower(number)
        for(i in 1..number){
            if(knightPower[i] > limit) answer += power
            else answer += knightPower[i]
        }
        return answer
    }
}
profile
Be able to be vulnerable, in search of truth

0개의 댓글