結果
問題 | No.1034 テスターのふっぴーさん |
ユーザー | tonyu0 |
提出日時 | 2020-04-24 22:33:10 |
言語 | Rust (1.77.0 + proconio) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,452 bytes |
コンパイル時間 | 18,217 ms |
コンパイル使用メモリ | 382,148 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-10-15 03:12:56 |
合計ジャッジ時間 | 13,505 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | WA | - |
testcase_01 | WA | - |
testcase_02 | WA | - |
testcase_03 | WA | - |
testcase_04 | WA | - |
testcase_05 | WA | - |
testcase_06 | WA | - |
testcase_07 | WA | - |
testcase_08 | WA | - |
testcase_09 | WA | - |
testcase_10 | WA | - |
testcase_11 | WA | - |
testcase_12 | WA | - |
testcase_13 | WA | - |
testcase_14 | WA | - |
testcase_15 | WA | - |
testcase_16 | WA | - |
testcase_17 | WA | - |
testcase_18 | WA | - |
testcase_19 | WA | - |
testcase_20 | WA | - |
testcase_21 | WA | - |
testcase_22 | WA | - |
testcase_23 | WA | - |
testcase_24 | WA | - |
testcase_25 | WA | - |
testcase_26 | WA | - |
testcase_27 | WA | - |
testcase_28 | WA | - |
testcase_29 | WA | - |
ソースコード
use std::cmp::*; use std::io::*; fn main() { let mut s: String = String::new(); std::io::stdin().read_to_string(&mut s).ok(); let mut itr = s.trim().split_whitespace(); let q: usize = itr.next().unwrap().parse().unwrap(); let mut out = Vec::new(); for _ in 0..q { let n: i64 = itr.next().unwrap().parse().unwrap(); let i: i64 = itr.next().unwrap().parse().unwrap(); let j: i64 = itr.next().unwrap().parse().unwrap(); let num = min(min(n - i - 1, n - j - 1), min(i, j)); let mut now = (num, num); let target = (i, j); let mut time = 4 * ((n - 1) * num - 2 * max(0, num - 1)); let diff = n - num * 2 - 1; // r if now.0 == target.0 && now.1 <= target.1 { writeln!(out, "{}", time + target.1 - now.1).ok(); continue; } time += target.1 - now.1; now.1 += diff; // b if now.1 == target.1 && now.0 <= target.0 { writeln!(out, "{}", time + target.0 - now.0).ok(); continue; } time += target.0 - now.0; now.0 -= diff; // l if now.0 == target.0 && now.1 >= target.1 { writeln!(out, "{}", time + now.1 - target.1).ok(); continue; } time += now.1 - target.1; now.1 -= diff; writeln!(out, "{}", time + now.0 - target.0).ok(); } stdout().write_all(&out).unwrap(); }