結果
| 問題 | No.45 回転寿司 |
| ユーザー |
バカらっく
|
| 提出日時 | 2019-09-09 18:05:44 |
| 言語 | Kotlin (2.3.0) |
| 結果 |
AC
|
| 実行時間 | 339 ms / 5,000 ms |
| コード長 | 591 bytes |
| 記録 | |
| コンパイル時間 | 13,050 ms |
| コンパイル使用メモリ | 446,408 KB |
| 実行使用メモリ | 52,160 KB |
| 最終ジャッジ日時 | 2024-06-28 12:56:59 |
| 合計ジャッジ時間 | 25,177 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 30 |
コンパイルメッセージ
Main.kt:1:10: warning: parameter 'arr' is never used
fun main(arr:Array<String>) {
^
Main.kt:2:9: warning: variable 'susiCount' is never used
val susiCount = readLine()!!.toInt()
^
Main.kt:17:38: warning: unnecessary non-null assertion (!!) on a non-null receiver of type Int
return susiList.take(2).max()!!
^
ソースコード
fun main(arr:Array<String>) {
val susiCount = readLine()!!.toInt()
susiList.addAll(readLine()!!.split(" ").map { it.toInt() })
susiList.indices.forEach { getAns(it) }
println(getAns(susiList.lastIndex))
}
val susiList = mutableListOf<Int>()
val dic = mutableMapOf<Int, Int>()
fun getAns(idx:Int):Int {
if(idx == 0) {
return susiList[0]
}
if(idx == 1) {
return susiList.take(2).max()!!
}
dic[idx]?.let { return it }
var ans = getAns(idx - 1)
ans = Math.max(getAns(idx-2) + susiList[idx], ans)
dic[idx] = ans
return ans
}
バカらっく