atcoder#ABC232H. [ABC232H] King's Tour

[ABC232H] King's Tour

题目描述

縦横 H × W H\ \times\ W のチェス盤と 1 1 個のキングの駒があります。
チェス盤のマスのうち、上から i i 行目 (1  i  H) (1\ \leq\ i\ \leq\ H) で左から j j 行目 (1  j  W) (1\ \leq\ j\ \leq\ W) のマスを (i, j) (i,\ j) と表します。
キングは置かれているマスから周囲 1 1 マスに動かすことができます。より厳密には、チェス盤のマス目の組 (i, j) (i,\ j) , (k, l) (k,\ l) max(ik,jl) = 1 \max(|i-k|,|j-l|)\ =\ 1 を満たすとき、かつその時に限り (i,j) (i,j) に置かれているキングを (k, l) (k,\ l) に動かすことができます。

次の条件を満たすようにキングを縦横 H × W H\ \times\ W のチェス盤上で動かすことを「ツアー」と定めます。

  • はじめ、(1, 1) (1,\ 1) にキングを置く。そのあと、キングが全てのマスにちょうど 1 1 回ずつ置かれるようにキングを動かす。

たとえば、H = 2, W = 3 H\ =\ 2,\ W\ =\ 3 のとき、$ (1,1)\ \to\ (1,2)\ \to\ (1,\ 3)\ \to\ (2,\ 3)\ \to\ (2,\ 2)\ \to\ (2,\ 1) $ の順にキングを動かしたものは条件を満たします。

チェス盤上の (1,1) (1,1) 以外のマス (a, b) (a,\ b) が与えられます。ツアーのうち最後にキングが置かれているマスが (a,b) (a,b) となるものを 1 1 つ構成して出力してください。この問題の制約下において解は必ず存在することが証明できます。

输入格式

入力は以下の形式で標準入力から与えられる。

H H W W a a b b

输出格式

HW HW 行出力せよ。i i 行目には i i 番目にキングが置かれたマス (hi, wi) (h_i,\ w_i) を以下の形式で出力せよ。

hi h_i wi w_i

ここで、1 1 行目は (1, 1) (1,\ 1) HW HW 行目は (a, b) (a,\ b) を出力する必要がある点に注意せよ。

题目大意

棋盘大小为 h×wh \times w,有一个王在 (1,1)(1,1)。每一步可以走到八连通的格子之一。构造一种方案,使得王经过所有格子恰好一次,并停在 (a,b)(a,b)

1h,w1001 \le h,w \le100

3 2 3 2
1 1
1 2
2 1
2 2
3 1
3 2

提示

制約

  • 2  H  100 2\ \leq\ H\ \leq\ 100
  • 2  W  100 2\ \leq\ W\ \leq\ 100
  • 1  a  H 1\ \leq\ a\ \leq\ H
  • 1  b  W 1\ \leq\ b\ \leq\ W
  • (a, b)  (1, 1) (a,\ b)\ \neq\ (1,\ 1)
  • 入力はすべて整数である。

Sample Explanation 1

キングは $ (1,\ 1)\ \to\ (1,\ 2)\ \to\ (2,\ 1)\ \to\ (2,\ 2)\to\ (3,\ 1)\ \to\ (3,\ 2) $ と移動して、これは確かに (3,2) (3,2) を終点とするツアーとなっています。 条件を満たすツアーは他にもいくつかあり、たとえば以下の 3 3 つの移動が挙げられます。 - $ (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) $