时间限制:1000 ms
内存限制:512 MiB
标准输入输出
题目类型:传统
评测方式:无测试数据
给定正整数 ,请在一个 的网格中将 个方格染成黑色,其余方格染成白色,满足:
给出一种合法的方案,或判定无解。
第一行包含一个正整数 ,表示数据组数。
每组数据包含一行两个正整数 ,分别表示网格的大小与每列中黑色格的数量。
保证单个测试点中所有数据 的和不超过 。
对于每组测试数据:
- 若不存在合法的染色方案,则仅输出一行一个字符串
No
;
- 否则,先输出一行一个字符串
Yes
,然后接下来 行每行输出一个长度为 ,仅包含字符 #
与 .
的字符串,代表你染色方案中从上到下每一行的染色情况,其中字符 #
代表对应格染为黑色,字符 .
代表对应格染为白色。如果有多种合法的染色方案,输出任意一种即可。
样例输入 1
样例输出 1
复制Yes
#..#
.##.
.##.
#..#
No
Yes
.#.#..##.
#.#.##..#
#.##..##.
.#..##.##
#..##.#.#
.##..#.#.
##.##.#.#
#.##.##..
.##.##.##
样例 #1 解释
对于第一组数据,以下为若干不符合条件的示例:

示例 中左下角有连续的三个白色格,示例 中第一列与第四列黑色格数量不正确,示例 中左上角有连续的三个黑色格,示例 中第三、四列的第二个黑色格行坐标之差大于 。
对于第二组数据,容易发现不存在合法的染色方案。
对于第三组数据,下图中不同方位的黑色格用不同颜色标注后易见答案的合法性:

来源与致谢
来自 THUPC2025(2025 年清华大学学生程序设计竞赛暨高校邀请赛)决赛。感谢 THUSAA 的提供的题目。
数据、题面、标程、题解等请参阅 THUPC 官方仓库 https://thusaac.com/public。