Recca Chao 的 gitHub page

推廣網站開發,包含 Laravel 和 Kotlin 後端撰寫、自動化測試、讀書心得等。Taiwan Kotlin User Group 管理員。

View on GitHub

Kotlin Leetcode - 383. Ransom Note

題目連接

class Solution {
    fun canConstruct(ransomNote: String, magazine: String): Boolean {
        
    }
}

解題思路

這一題考的是對陣列的處理

我們可以先建立一個 IntArray

然後利用 apply 撰寫內部邏輯

最後判斷是否滿足條件

Kotlin 參考解答

class Solution {
    fun canConstruct(r: String, m: String) = IntArray(26).apply {
        m.forEach { this[it - 'a']++ }
        r.forEach { if (this[it - 'a'] == 0) return false else this[it - 'a']-- }
    }.isNotEmpty()
}