結果
問題 |
No.1535 五七五
|
ユーザー |
![]() |
提出日時 | 2023-02-28 22:19:40 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 928 ms / 2,000 ms |
コード長 | 592 bytes |
コンパイル時間 | 155 ms |
コンパイル使用メモリ | 7,296 KB |
実行使用メモリ | 120,944 KB |
最終ジャッジ日時 | 2024-09-16 00:11:54 |
合計ジャッジ時間 | 10,955 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 |
コンパイルメッセージ
Syntax OK
ソースコード
N = gets.to_i A, B, C = gets.split.map(&:to_i) S = gets.chomp.split.map(&:size) E = Array.new(N) { {} } [A, B, C].uniq.each do |x| l = 0 r = 0 num = S[0] while l < N if num == x E[l][x] = r + 1 end if r == N - 1 num -= S[l] l += 1 elsif num < x r += 1 num += S[r] else num -= S[l] l += 1 end end end ans = 0 N.times do |i| cur = i next if E[cur][A].nil? cur = E[cur][A] next if cur >= N next if E[cur][B].nil? cur = E[cur][B] next if cur >= N next if E[cur][C].nil? ans += 1 end puts ans