結果
問題 |
No.472 平均順位
|
ユーザー |
![]() |
提出日時 | 2018-06-05 10:12:35 |
言語 | Kotlin (2.1.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 810 bytes |
コンパイル時間 | 14,954 ms |
コンパイル使用メモリ | 436,356 KB |
実行使用メモリ | 491,896 KB |
最終ジャッジ日時 | 2024-11-20 16:05:49 |
合計ジャッジ時間 | 51,977 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 WA * 1 |
other | WA * 5 TLE * 10 MLE * 1 |
コンパイルメッセージ
Main.kt:3:10: warning: parameter 'args' is never used fun main(args: Array<String>) { ^ Main.kt:14:96: warning: unnecessary non-null assertion (!!) on a non-null receiver of type Long _dp[k] = arrayOf(dp[k]+q[i][0], dp[k-1]+q[i][1], dp[k-2]+q[i][2], dp[k-3]+1L).min()!! ^ Main.kt:16:88: warning: unnecessary non-null assertion (!!) on a non-null receiver of type Long if (P >= 2) _dp[2] = arrayOf(dp[2]+q[i][0], dp[1]+q[i][1], dp[0]+q[i][2]).min()!! ^
ソースコード
import java.util.* fun main(args: Array<String>) { val sc = Scanner(System.`in`) val (N, P) = Pair(sc.nextInt(), sc.nextInt()) val q = Array(N, { arrayOf(sc.nextInt(), sc.nextInt(), sc.nextInt())}) var dp = Array(P+1, { 0L }) val inf = 100000L*N val filled_dp = Array(P+1, { inf }) for (i in 0 until N) { val _dp = filled_dp.clone() for (k in Math.min(3*(i+1), P) downTo 3) { println(k) _dp[k] = arrayOf(dp[k]+q[i][0], dp[k-1]+q[i][1], dp[k-2]+q[i][2], dp[k-3]+1L).min()!! } if (P >= 2) _dp[2] = arrayOf(dp[2]+q[i][0], dp[1]+q[i][1], dp[0]+q[i][2]).min()!! if (P >= 1) _dp[1] = Math.min(dp[1]+q[i][0], dp[0]+q[i][1]) _dp[0] = dp[0]+q[i][0] dp = _dp } println(dp[P].toDouble() / N.toDouble()) }