結果
問題 |
No.5017 Tool-assisted Shooting
|
ユーザー |
![]() |
提出日時 | 2023-07-16 15:48:09 |
言語 | Kotlin (2.1.0) |
結果 |
AC
|
実行時間 | 507 ms / 2,000 ms |
コード長 | 1,703 bytes |
コンパイル時間 | 12,818 ms |
コンパイル使用メモリ | 423,880 KB |
実行使用メモリ | 72,708 KB |
スコア | 79,766 |
平均クエリ数 | 293.22 |
最終ジャッジ日時 | 2023-07-16 15:49:08 |
合計ジャッジ時間 | 55,638 ms |
ジャッジサーバーID (参考情報) |
judge13 / judge14 |
純コード判定しない問題か言語 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 100 |
コンパイルメッセージ
Main.kt:10:10: warning: parameter 'args' is never used fun main(args: Array<String>) { ^ Main.kt:14:9: warning: variable 'power' is never used var power = 100 ^ Main.kt:35:56: warning: identity equality for arguments of types Int and Int is deprecated val sameLineEnemyList = enemyList.filter { it.x === own } ^
ソースコード
private fun next() = readLine()!! private fun nextInt() = next().toInt() private fun nextLong() = next().toLong() private fun nextDouble() = next().toDouble() private fun nextList() = next().split(" ") private fun nextIntList() = next().split(" ").map { it.toInt() }.toIntArray() private fun nextLongList() = next().split(" ").map { it.toLong() }.toLongArray() private fun nextDoubleList() = next().split(" ").map { it.toDouble() }.toDoubleArray() fun main(args: Array<String>) { var turn = 0 var enemyList = mutableListOf<Enemy>() var own = 12 var power = 100 while (turn < 1000) { val n = nextInt() if (n == -1) { return } val newEnemyList = mutableListOf<Enemy>() for (enemy in enemyList) { val isAlive = enemy.nextTurn() if (isAlive) { newEnemyList.add(enemy) } } enemyList = newEnemyList for (i in 0 until n) { val hpx = nextIntList() enemyList.add(Enemy(hpx[2], 59, hpx[0], hpx[1])) } if (enemyList.isEmpty()) { println("S") } else { val sameLineEnemyList = enemyList.filter { it.x === own } if (sameLineEnemyList.isEmpty()) { if (Math.random() < 0.5) { println("R") own++ } else { println("L") own-- } } else { println("S") } } turn++ } } class Enemy(var x: Int, var y: Int, var h: Int, var p: Int) { fun nextTurn(): Boolean { y-- return y >= 0 } }