atcoder#ABC232H. [ABC232H] King's Tour
[ABC232H] King's Tour
配点 : 点
問題文
縦横 のチェス盤と 個のキングの駒があります。 チェス盤のマスのうち、上から 行目 で左から 行目 のマスを と表します。 キングは置かれているマスから周囲 マスに動かすことができます。より厳密には、チェス盤のマス目の組 , が を満たすとき、かつその時に限り に置かれているキングを に動かすことができます。
次の条件を満たすようにキングを縦横 のチェス盤上で動かすことを「ツアー」と定めます。
- はじめ、 にキングを置く。そのあと、キングが全てのマスにちょうど 回ずつ置かれるようにキングを動かす。
たとえば、 のとき、$(1,1) \to (1,2) \to (1, 3) \to (2, 3) \to (2, 2) \to (2, 1)$ の順にキングを動かしたものは条件を満たします。
チェス盤上の 以外のマス が与えられます。ツアーのうち最後にキングが置かれているマスが となるものを つ構成して出力してください。この問題の制約下において解は必ず存在することが証明できます。
制約
- 入力はすべて整数である。
入力
入力は以下の形式で標準入力から与えられる。
出力
行出力せよ。 行目には 番目にキングが置かれたマス を以下の形式で出力せよ。
ここで、 行目は 、 行目は を出力する必要がある点に注意せよ。
3 2 3 2
1 1
1 2
2 1
2 2
3 1
3 2
キングは $(1, 1) \to (1, 2) \to (2, 1) \to (2, 2)\to (3, 1) \to (3, 2)$ と移動して、これは確かに を終点とするツアーとなっています。 条件を満たすツアーは他にもいくつかあり、たとえば以下の つの移動が挙げられます。
- $(1, 1) \to (1, 2) \to (2, 2) \to (2, 1) \to (3, 1) \to (3, 2)$
- $(1, 1) \to (2, 1) \to (1, 2) \to (2, 2) \to (3, 1) \to (3, 2)$
- $(1, 1) \to (2, 2) \to (1, 2) \to (2, 1) \to (3, 1) \to (3, 2)$