學妹和我在線索的分析上起了爭執。
「還不能確定那些數字就是指題目編號吧?在那之前我們都是自己選題,也沒什麼問題。」學妹覺得應該恢復自己選題,掌握主動權。
「⋯⋯是這樣沒錯。」其實我也不是很肯定,只是覺得題號剛好可以套上去,所以就同意讓學妹選題試試。
1323. Maximum 69 Number要求轉換一個6或9來成就最大的數字。
「當然是6換成9,數字才會變大。所以只要找到一個最高位數的6,把它換成9就好了。」學妹對於題目繞圈子的說明,覺得有點好笑。
在數字裡尋找符合的條件一般來說是用迴圈,但是學妹把數字轉換成字串來處理,程式碼寫起來很漂亮也容易看懂。
class Solution {
fun maximum69Number (num: Int): Int {
return num.toString().replaceFirst('6','9').toInt()
}
}
送出去之後沒有動靜。
學妹又試著解了一題1528. Shuffle String,將字串按照陣列裡的數字排列。
class Solution {
fun restoreString(s: String, indices: IntArray): String {
val result = CharArray(s.length)
indices.forEachIndexed { index, element -> result[element] = s[index] }
return String(result)
}
}
forEachIndexed
這個方法的好處就是可以同時取出索引及元素,如果只有索引就得寫成result[indices[index]] = s[index]
,讀起來比較痛苦。
嗯?好像有什麼聲音?