結果
問題 |
No.3068 Speedrun (Hard)
|
ユーザー |
|
提出日時 | 2025-04-29 03:06:44 |
言語 | Rust (1.83.0 + proconio) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,293 bytes |
コンパイル時間 | 11,798 ms |
コンパイル使用メモリ | 400,388 KB |
実行使用メモリ | 7,848 KB |
最終ジャッジ日時 | 2025-04-29 03:07:07 |
合計ジャッジ時間 | 19,700 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 28 WA * 4 |
コンパイルメッセージ
warning: value assigned to `tmp1` is never read --> src/main.rs:12:13 | 12 | let mut tmp1:isize = 0; | ^^^^ | = help: maybe it is overwritten before being read? = note: `#[warn(unused_assignments)]` on by default warning: value assigned to `tmp2` is never read --> src/main.rs:13:13 | 13 | let mut tmp2:isize = 0; | ^^^^ | = help: maybe it is overwritten before being read?
ソースコード
use proconio::input; use std::cmp::min; fn main() { input!{ a:isize, b:isize, c:isize, d:isize, n:isize, p:isize, q:isize, r:isize, s:isize, t:isize, } let mut x_c:isize; let mut x_d:isize; let mut tmp1:isize = 0; let mut tmp2:isize = 0; let mut flag:bool = false; let mut ans:[isize;4] = [10001, 10001, 10001, 10001]; for x_b in 0..=(b as isize) { for x_a in 0..=(a as isize) { tmp1 = n - x_a - x_b; tmp2 = t - (p*x_a) - (q*x_b); if tmp2 < 0 { break; } if r!=s { // x_dが整数にならないパターン if ((tmp1*r) - tmp2)%(r-s)!=0 { continue; } x_d = ((tmp1*r) - tmp2) / (r-s); } else { if tmp1*r!=tmp2 { continue; } x_d = min(r, tmp1); } x_c = tmp1 - x_d; if 0<=x_c && x_c<=c && 0<=x_d && x_d<=d { ans = [x_a, x_b, x_c, x_d]; flag = true; break; } } if flag { break; } } println!("{} {} {} {}",ans[0],ans[1],ans[2],ans[3]); }