AT_arc093_b [ABC092D] Grid Components
题目描述
给定两个整数 $A$、$B$。
请输出一个满足以下条件的网格(每个格子被涂成白色或黑色),并按照输出格式输出:
- 网格的大小为 $h$ 行 $w$ 列,$h$ 和 $w$ 都不超过 $100$。
- 所有白色格子恰好分成 $A$ 个连通块(关于“连通块”的定义见下方注释)。
- 所有黑色格子恰好分成 $B$ 个连通块。
在题目给定的限制条件下,保证至少存在一个解。如果有多个解,输出任意一个均可。
输入格式
输入从标准输入读取,格式如下:
> $A$ $B$
输出格式
请按如下格式输出:
- 第 $1$ 行输出两个整数 $h$ 和 $w$,表示构造的网格的大小,用空格分隔。
- 接下来输出 $h$ 行。第 $i$ 行($1 \leq i \leq h$)输出一个长度为 $w$ 的字符串 $s_i$,表示网格第 $i$ 行的涂色情况。
- 如果第 $i$ 行第 $j$ 列的格子是白色,则 $s_i$ 的第 $j$ 个字符为 `.`。
- 如果第 $i$ 行第 $j$ 列的格子是黑色,则 $s_i$ 的第 $j$ 个字符为 `#`。
说明/提示
## 注释
两个白色格子 $c_1$、$c_2$ 连通,指的是可以通过只经过白色格子、每次只移动到上下左右相邻的格子,从 $c_1$ 走到 $c_2$。
白色格子的集合 $S$ 是一个连通块,指的是 $S$ 满足以下条件:
- $S$ 中任意两个格子都是连通的。
- 不属于 $S$ 的任何白色格子,与 $S$ 中的任意格子都不连通。
黑色格子的连通块定义同理。
## 约束条件
- $1 \leq A \leq 500$
- $1 \leq B \leq 500$
## 样例解释 1
以下输出对应的网格如下所示。

由 ChatGPT 4.1 翻译