Recca Chao 的 gitHub page

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

View on GitHub

Kotlin Leetcode - 1071. Greatest Common Divisor of Strings

題目連接

class Solution {
    fun gcdOfStrings(str1: String, str2: String): String {

    }
}

解題思路

這一題考的是對字串的處理

比較棘手的是針對字串的「最大公因數」怎麼實作

Kotlin 參考解答

class Solution {
    fun gcdOfStrings(str1: String, str2: String): String {
        if (str1 + str2 != str2 + str1) return ""
        val gcdVal = gcd(str1.length, str2.length)
        return str2.substring(0, gcdVal)
    }

    fun gcd(p: Int, q: Int): Int {
        return if (q == 0) p else gcd(q, p % q)
    }
}

回到 leetcode 列表