結果
| 問題 | No.3684 chokudai_niku.png |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-09-05 13:24:45 |
| 言語 | Rust (1.97.1 + proconio + num + itertools + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 17 ms / 2,000 ms |
| + 300µs | |
| コード長 | 1,018 bytes |
| 記録 | |
| コンパイル時間 | 550 ms |
| コンパイル使用メモリ | 179,696 KB |
| 実行使用メモリ | 7,936 KB |
| 最終ジャッジ日時 | 2026-09-05 13:24:53 |
| 合計ジャッジ時間 | 7,152 ms |
|
ジャッジサーバーID (参考情報) |
judge1_0 / judge3_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 44 |
ソースコード
use proconio::input;
/// 尺取り法 / two pointers / sliding window(テンプレ1:right-for, left-while)
/// left=0 で開始
/// for right in 0..n { // right は 0..n-1 を走る
/// add(a[right]); // 右端を window に追加
/// while invalid { // 壊れている間だけ「出して進める」
/// remove(a[left]); // 左端を window から削除
/// left += 1; // remove の後に left を進める
/// }
/// update_answer(); // ここで必ず valid(window=[left..=right])
/// }
fn main() {
input! {
n: usize,
m: usize,
a: [usize; n],
b: [usize; n],
}
let mut ans: usize = 0;
let mut cur = 0;
for right in 0..n {
if a[right] > b[right] {
cur += a[right] - b[right];
}
if right >= m && a[right - m] > b[right - m] {
cur -= a[right - m] - b[right - m];
}
ans = ans.max(cur);
}
println!("{}", ans);
}