2023年9月8日 星期五

【LeetCode】【Kotlin】383. Ransom Note (Array)

 

IntArray 使用



fun main() {
    val array = IntArray(3)
    array[0] = 1
    println(array.joinToString())
    for(n in array) {
		println(n)
    }
    
    val array2 = Array(3){9}
    println(array2.joinToString())
}

1, 0, 0
1
0
0
9, 9, 9

解題

題意 

ransomNote 上面的字需要使用 magazine 上剪下來的。所以 ransomNote 使用的字需少於 magazine 所擁有的。

程式碼


class Solution {
    fun canConstruct(ransomNote: String, magazine: String): Boolean {
        var letters = IntArray(26)
        for (s in magazine) {
            letters[s - 'a']++
        }
        for (s in ransomNote) {
            letters[s -'a']--
        }
        for (n in letters){
            if(n < 0) return false
        }
        return true
    }
}
192ms / 37.50MB (beats  84.33% / 62.70%)

0 comments:

張貼留言