#abc232h. [abc232_h]King's Tour

[abc232_h]King's Tour

题目描述

我们有一个 H×WH \times W 的棋盘,其中 HH 行、WW 列,并有一颗国王。
(i,j)(i, j) 表示从顶部数第 ii 行(1iH1 \leq i \leq H)和从左侧数第 jj 列(1jW1 \leq j \leq W)的方格。
国王可以向任何方向移动一个方格。形式上,国王在 (i,j)(i,j) 处可以移动到 (k,l)(k,l) 处,当且仅当 ik|i-k|jl|j-l| 中的最大值为 1。

一个“游览”是将国王在 H×WH \times W 棋盘上按照以下方式移动的过程。

  • 首先将国王放在 (1,1)(1, 1) 上。然后,国王依次移动到每个方格上恰好一次。

例如,当 H=2H = 2W=3W = 3 时,$(1,1) \rightarrow (1,2) \rightarrow (1, 3) \rightarrow (2, 3) \rightarrow (2, 2) \rightarrow (2, 1)$ 是一个有效的游览路径。

给定一个除了 (1,1)(1, 1) 以外的方格 (a,b)(a, b)。构造一个以 (a,b)(a, b) 结束的游览路径并打印出来。根据该问题的约束条件,可以证明一定存在一个解。

约束条件

  • 2H1002 \leq H \leq 100
  • 2W1002 \leq W \leq 100
  • 1aH1 \leq a \leq H
  • 1bW1 \leq b \leq W
  • (a,b)(1,1)(a, b) \neq (1, 1)
  • 输入中的所有值都是整数。

输入

输入以以下格式从标准输入中给出:

HH WW aa bb

输出

输出 HWHW 行。第 ii 行应该包含国王放置在第 ii 个方格上的位置 (hi,wi)(h_i, w_i),格式如下:

hih_i wiw_i

注意,第 1 行应该包含 (1,1)(1, 1),第 HWHW 行应该包含 (a,b)(a, b)


示例输入 1

3 2 3 2

示例输出 1

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

国王的移动路径为 $(1, 1) \rightarrow (1, 2) \rightarrow (2, 1) \rightarrow (2, 2) \rightarrow (3, 1) \rightarrow (3, 2)$,这确实是以 (3,2)(3, 2) 结束的游览路径。
还有其他一些有效的游览路径,以下列出其中三个。

  • $(1, 1) \rightarrow (1, 2) \rightarrow (2, 2) \rightarrow (2, 1) \rightarrow (3, 1) \rightarrow (3, 2)$
  • $(1, 1) \rightarrow (2, 1) \rightarrow (1, 2) \rightarrow (2, 2) \rightarrow (3, 1) \rightarrow (3, 2)$
  • $(1, 1) \rightarrow (2, 2) \rightarrow (1, 2) \rightarrow (2, 1) \rightarrow (3, 1) \rightarrow (3, 2)$