結果
| 問題 |
No.1767 BLUE to RED
|
| コンテスト | |
| ユーザー |
tomerun
|
| 提出日時 | 2021-11-26 23:01:39 |
| 言語 | Crystal (1.14.0) |
| 結果 |
AC
|
| 実行時間 | 71 ms / 2,000 ms |
| コード長 | 565 bytes |
| コンパイル時間 | 9,509 ms |
| コンパイル使用メモリ | 295,124 KB |
| 実行使用メモリ | 31,652 KB |
| 最終ジャッジ日時 | 2024-06-29 18:26:05 |
| 合計ジャッジ時間 | 11,590 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 21 |
ソースコード
n, m = read_line.split.map(&.to_i)
a = read_line.split.map(&.to_i)
b = read_line.split.map(&.to_i)
ans = 0
bi = 0
if b[0] < a[0]
ans += a[0] - b[0]
while bi < m && b[bi] < a[0]
bi += 1
end
end
(n - 1).times do |i|
nbi = bi
bs = [] of Int32
while nbi < m && b[nbi] < a[i + 1]
bs << b[nbi]
nbi += 1
end
if !bs.empty?
ds = [bs[0] - a[i], a[i + 1] - bs[-1]]
(bs.size - 1).times do |j|
ds << bs[j + 1] - bs[j]
end
ans += a[i + 1] - a[i] - ds.max
end
bi = nbi
end
if b[-1] > a[-1]
ans += b[-1] - a[-1]
end
puts ans
tomerun