結果

問題 No.351 市松スライドパズル
ユーザー phsplsphspls
提出日時 2020-05-16 21:16:18
言語 Rust
(1.83.0 + proconio)
結果
AC  
実行時間 236 ms / 2,000 ms
コード長 1,199 bytes
コンパイル時間 11,984 ms
コンパイル使用メモリ 400,860 KB
実行使用メモリ 65,180 KB
最終ジャッジ日時 2024-09-22 18:57:19
合計ジャッジ時間 16,899 ms
ジャッジサーバーID
(参考情報)
judge3 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 17
権限があれば一括ダウンロードができます

ソースコード

diff #

fn main() {
   let mut hw = String::new();
   std::io::stdin().read_line(&mut hw).ok();
   let hw: Vec<usize> = hw.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); 
   let h = hw[0];
   let w = hw[1];
   let mut n = String::new();
   std::io::stdin().read_line(&mut n).ok();
   let n: usize = n.trim().parse().unwrap();
   let mut op: Vec<(String, usize)> = vec![];
   for _ in 0..n {
       let mut sk = String::new();
       std::io::stdin().read_line(&mut sk).ok();
       let mut sk = sk.trim().split_whitespace();
       let s: String = sk.next().unwrap().to_string();
       let k: usize = sk.next().unwrap().parse().unwrap();
       op.push((s, k));
   }
   let mut lu: (usize, usize) = (0, 0);
   for pair in op.iter().rev() {
        if pair.0 == "R".to_string() && pair.1 == lu.0 {
            if lu.1 == 0 {
                lu.1 = w-1;
            } else {
                lu.1 -= 1;
            }
        } else if pair.0 == "C".to_string() && pair.1 == lu.1 {
            if lu.0 == 0 {
                lu.0 = h-1;
            } else {
                lu.0 -= 1;
            }
        }
   }
   println!("{}", if (lu.0 + lu.1) % 2 == 0 { "white" } else { "black" } );
}
0