#4064. 士踏棋盘

士踏棋盘

当前没有测试数据。

士踏棋盘问题(斜角巡游问题)

问题描述

在一个 n×nn \times n 的棋盘上,有一个象棋中的“士”。它的移动方式是 沿对角线方向移动一步,并且不能跳出棋盘。给定棋盘的大小 nn 和起始位置 (x,y)(x, y),请判断士是否能遍历整个棋盘,使得每个格子恰好访问一次。


输入

  • 一个整数 nn1n101 \leq n \leq 10),表示棋盘的边长。
  • 两个整数 x,yx, y0x,y<n0 \leq x, y < n),表示士的起始位置。

输出

  • 如果存在一条完整遍历棋盘的路径,输出一个 n×nn \times n 的矩阵,其中数字表示士访问各个格子的顺序(从 1 开始)。
  • 如果无法遍历整个棋盘,输出 -1

士的移动规则

  • 只能沿对角线方向移动一步:(+1,+1),(+1,1),(1,+1),(1,1)(+1, +1), (+1, -1), (-1, +1), (-1, -1)
  • 不能跳出棋盘。
  • 不能访问已经走过的格子。

示例

输入