Logo 邂逅编程之美

UOJ

时间限制:1 s 空间限制:1024 MB
Statistics

矩阵

题面描述

有一个 $n \times m$ 的空矩阵,你需要用以下两种图形填满这个矩阵:

1
#.
#.
##
2
#.
##

其中 '#' 位置表示有方格,'.' 位置表示无方格,你可以将这两种图形,旋转任意 $90°$ 的倍数,或者水平翻转。

问完全覆盖这个矩阵,需要最少多少个图形。

输入格式

第一行一个整数表示数据组数 $T$。

每组数据,一行两个整数 $n$ 和 $m$。

输出格式

对每组数据:

第一行一个字符串:如果有解输出 Yes,无解输出 No。

如果有解,再输出一个矩阵,对于你的第 $i$ 个图形,其所在矩阵的位置的值为 $i$。

样例输入

3
2 3
2 4
3 3

样例输出

Yes
2 2 1
2 1 1
Yes
1 1 1 2
1 2 2 2
No

数据范围

100% 的数据范围保证 $1\leq T \leq 1000,1\leq \sum nm \leq 10^6,1 \leq n,m \leq 500$。