#Z06071011. 骑士巡游(二)

骑士巡游(二)

题目描述

骑士厌倦了一次又一次地看到同样的黑白方块,他决定去世界各地旅行。骑士按照“日”字形的方式移动,骑士的世界就是他赖以生存的棋盘。我们的骑士生活在一个面积比普通8 * 8棋盘小的棋盘上,但它仍然是矩形的。你能帮助这位喜欢冒险的骑士制定旅行计划吗?

image

找到一条路径,使骑士访问每个格子一次。骑士可以在棋盘的任何方格开始和结束。

输入格式

输入从第一行的正整数n开始。下面几行包含n个测试用例。 每个测试用例由一行两个正整数p和q组成,
因此1 <= p * q <= 26。这代表一个p * q棋盘,其中q描述了有多少不同的字母存在,按照字母表的顺序,第一个字母:A...

输出格式

每个场景的输出都以包含“Scenario #i:”的一行开始,其中i是从1开始的场景编号。然后打印一行,其中包含按字典顺序排列的第一条路径,这条路径访问棋盘上的所有方格。路径应该在一行中给出,方法是将访问过的方块的名称连接起来。每个方块名称由一个大写字母后跟一个数字组成。 如果不存在这样路径,应该在一行中输出impossible。

3
1 1
2 3
4 3
Scenario #1:
A1

Scenario #2:
impossible

Scenario #3:
A1B3C1A2B4C2A3B1C3A4B2C4

数据规模与约定