結果
問題 | No.1736 Princess vs. Dragoness |
ユーザー |
|
提出日時 | 2021-11-12 22:36:46 |
言語 | Rust (1.83.0 + proconio) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,450 bytes |
コンパイル時間 | 12,396 ms |
コンパイル使用メモリ | 382,896 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-25 20:06:27 |
合計ジャッジ時間 | 13,708 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 26 WA * 7 |
ソースコード
fn main() { let v1: Vec<i64> = input_line(); let (n, mut a, mut b, x, y) = (v1[0] as usize, v1[1], v1[2], v1[3], v1[4]); let mut hv: Vec<i64> = input_line(); let mut ind = 0_usize; 'outer: loop { if hv[ind] <= x && a > 0 { hv[ind] -= x; a -= 1; ind += 1; if ind == n { break 'outer; } } else if b > 0 { let mut p = y; loop { if hv[ind] >= p { hv[ind] -= p; break; } else { p -= hv[ind]; hv[ind] = 0; ind += 1; if ind == n { break 'outer; } } } b -= 1; } else if a > 0 { hv[ind] -= x; a -= 1; if hv[ind] <= 0 { hv[ind] = 0; ind += 1; if ind == n { break 'outer; } } } if a == 0 && b == 0 { break; } } println!("{}", if hv[n - 1] <= 0 { "Yes" } else { "No" }); } fn input_line<T: std::str::FromStr>() -> Vec<T> { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim() .split_whitespace() .map(|e| e.parse().ok().unwrap()) .collect() }