結果
問題 | No.78 クジ付きアイスバー |
ユーザー |
![]() |
提出日時 | 2017-02-04 16:25:07 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 127 ms / 5,000 ms |
コード長 | 393 bytes |
コンパイル時間 | 168 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 13,056 KB |
最終ジャッジ日時 | 2024-12-24 06:16:10 |
合計ジャッジ時間 | 5,867 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 35 |
コンパイルメッセージ
Syntax OK
ソースコード
require 'matrix' N, K = gets.split.map(&:to_i) S = gets.chomp def f(s, i, m) if i == s.size Vector[0, m] elsif m > 0 f(s, i + 1, m - 1 + s[i].to_i) else f(s, i + 1, s[i].to_i) + Vector[1, 0] end end a, b = f(S, 0, 0).to_a ans = if K < N f(S[0...(K % N)], 0, 0)[0] else a + (K / N - 1) * [a - b, 0].max + f(S[0...(K % N)], 0, b)[0] end puts ans