結果
問題 | No.1345 Beautiful BINGO |
ユーザー |
![]() |
提出日時 | 2021-01-16 14:56:41 |
言語 | Crystal (1.14.0) |
結果 |
AC
|
実行時間 | 548 ms / 2,000 ms |
コード長 | 669 bytes |
コンパイル時間 | 12,079 ms |
コンパイル使用メモリ | 300,808 KB |
実行使用メモリ | 33,860 KB |
最終ジャッジ日時 | 2024-06-30 21:59:16 |
合計ジャッジ時間 | 20,842 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 61 |
ソースコード
lib C fun strtoll(s : UInt8*, p : UInt8**, b : Int32) : Int64 end class String def to_i64 C.strtoll(self, nil, 10) end end n, m = read_line.split.map(&.to_i) a = (1..n).map { read_line.split.map(&.to_i) } puts [false, true].repeated_permutations(n + 2).min_of { |flag| cnt = flag.count(true) if cnt + n < m 10**9 else b = [0] * n sum = 0 (0...n).each { |i| (0...n).each { |j| if flag[i] || (flag[-2] && i == j) || (flag[-1] && i == (n - 1 - j)) sum += a[i][j] else b[j] += a[i][j] end } } if cnt >= m sum else sum + b.sort[0, m - cnt].sum end end }