提出 #30714526
ソースコード 拡げる
use proconio::{input, marker::Chars, marker::Usize1};
const DIR: [(usize, usize); 4] = [
(1, 1),
(1, 1_usize.wrapping_neg()),
(1_usize.wrapping_neg(), 1),
(1_usize.wrapping_neg(), 1_usize.wrapping_neg()),
];
fn main() {
input! {
n: usize,
a: (Usize1, Usize1),
b: (Usize1, Usize1),
s: [Chars; n],
}
if (a.0 + a.1) % 2 != (b.0 + b.1) % 2 {
println!("-1");
return;
}
let bfs = |sh: usize, sw: usize| -> i32 {
let mut que = std::collections::VecDeque::new();
let mut dist = vec![vec![-1; n]; n];
dist[sh][sw] = 0;
que.push_back((sh, sw));
while !que.is_empty() {
let v = que.pop_front().unwrap();
for &(dh, dw) in DIR.iter() {
for d in 1..n {
let nh = v.0 + d * dh;
let nw = v.1 + d * dw;
if n <= nh || n <= nw {
break;
}
if s[nh][nw] == '#' {
break;
}
if dist[nh][nw] != -1 {
continue;
}
dist[nh][nw] = dist[v.0][v.1] + 1;
if nh == b.0 && nw == b.1 {
return dist[b.0][b.1];
}
que.push_back((nh, nw));
}
}
}
dist[b.0][b.1]
};
println!("{}", bfs(a.0, a.1))
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | E - Bishop 2 |
| ユーザ | ntk_ta01 |
| 言語 | Rust (1.42.0) |
| 得点 | 500 |
| コード長 | 1558 Byte |
| 結果 | AC |
| 実行時間 | 2423 ms |
| メモリ | 39532 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 500 / 500 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | sample_01.txt, sample_02.txt, sample_03.txt |
| All | sample_01.txt, sample_02.txt, sample_03.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt, test_52.txt, test_53.txt, test_54.txt, test_55.txt, test_56.txt, test_57.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| sample_01.txt | AC | 7 ms | 2032 KiB |
| sample_02.txt | AC | 1 ms | 2000 KiB |
| sample_03.txt | AC | 4 ms | 2040 KiB |
| test_01.txt | AC | 2 ms | 2068 KiB |
| test_02.txt | AC | 1 ms | 2088 KiB |
| test_03.txt | AC | 1 ms | 2068 KiB |
| test_04.txt | AC | 1 ms | 2116 KiB |
| test_05.txt | AC | 2 ms | 2156 KiB |
| test_06.txt | AC | 152 ms | 18176 KiB |
| test_07.txt | AC | 31 ms | 12204 KiB |
| test_08.txt | AC | 19 ms | 4212 KiB |
| test_09.txt | AC | 2 ms | 2164 KiB |
| test_10.txt | AC | 4 ms | 2656 KiB |
| test_11.txt | AC | 975 ms | 36392 KiB |
| test_12.txt | AC | 79 ms | 9352 KiB |
| test_13.txt | AC | 2 ms | 2324 KiB |
| test_14.txt | AC | 2 ms | 2440 KiB |
| test_15.txt | AC | 3 ms | 3616 KiB |
| test_16.txt | AC | 2 ms | 2148 KiB |
| test_17.txt | AC | 50 ms | 7276 KiB |
| test_18.txt | AC | 19 ms | 7252 KiB |
| test_19.txt | AC | 2 ms | 2128 KiB |
| test_20.txt | AC | 25 ms | 12360 KiB |
| test_21.txt | AC | 5 ms | 2668 KiB |
| test_22.txt | AC | 57 ms | 10696 KiB |
| test_23.txt | AC | 17 ms | 3352 KiB |
| test_24.txt | AC | 4 ms | 3588 KiB |
| test_25.txt | AC | 2 ms | 2744 KiB |
| test_26.txt | AC | 97 ms | 20284 KiB |
| test_27.txt | AC | 129 ms | 18380 KiB |
| test_28.txt | AC | 5 ms | 3084 KiB |
| test_29.txt | AC | 22 ms | 17680 KiB |
| test_30.txt | AC | 27 ms | 21712 KiB |
| test_31.txt | AC | 219 ms | 27776 KiB |
| test_32.txt | AC | 82 ms | 22312 KiB |
| test_33.txt | AC | 54 ms | 22056 KiB |
| test_34.txt | AC | 50 ms | 21840 KiB |
| test_35.txt | AC | 31 ms | 21716 KiB |
| test_36.txt | AC | 128 ms | 22896 KiB |
| test_37.txt | AC | 28 ms | 22196 KiB |
| test_38.txt | AC | 21 ms | 13164 KiB |
| test_39.txt | AC | 25 ms | 21920 KiB |
| test_40.txt | AC | 29 ms | 21656 KiB |
| test_41.txt | AC | 45 ms | 22388 KiB |
| test_42.txt | AC | 22 ms | 13188 KiB |
| test_43.txt | AC | 66 ms | 22012 KiB |
| test_44.txt | AC | 28 ms | 21824 KiB |
| test_45.txt | AC | 22 ms | 13148 KiB |
| test_46.txt | AC | 58 ms | 29876 KiB |
| test_47.txt | AC | 2423 ms | 36076 KiB |
| test_48.txt | AC | 1209 ms | 38460 KiB |
| test_49.txt | AC | 96 ms | 35548 KiB |
| test_50.txt | AC | 43 ms | 27240 KiB |
| test_51.txt | AC | 45 ms | 28012 KiB |
| test_52.txt | AC | 56 ms | 32132 KiB |
| test_53.txt | AC | 20 ms | 13044 KiB |
| test_54.txt | AC | 28 ms | 21836 KiB |
| test_55.txt | AC | 87 ms | 39532 KiB |
| test_56.txt | AC | 20 ms | 13116 KiB |
| test_57.txt | AC | 48 ms | 21788 KiB |