#ATarc093b. [ABC092D] Grid Components

[ABC092D] Grid Components

题目描述

给定两个整数 AABB

请输出一个满足以下条件的网格(每个格子被涂成白色或黑色),并按照输出格式输出:

  • 网格的大小为 hhww 列,hhww 都不超过 100100
  • 所有白色格子恰好分成 AA 个连通块(关于“连通块”的定义见下方注释)。
  • 所有黑色格子恰好分成 BB 个连通块。

在题目给定的限制条件下,保证至少存在一个解。如果有多个解,输出任意一个均可。

输入格式

输入从标准输入读取,格式如下:

AA BB

输出格式

请按如下格式输出:

  • 11 行输出两个整数 hhww,表示构造的网格的大小,用空格分隔。
  • 接下来输出 hh 行。第 ii 行(1ih1 \leq i \leq h)输出一个长度为 ww 的字符串 sis_i,表示网格第 ii 行的涂色情况。
    • 如果第 ii 行第 jj 列的格子是白色,则 sis_i 的第 jj 个字符为 .
    • 如果第 ii 行第 jj 列的格子是黑色,则 sis_i 的第 jj 个字符为 #

样例 1

输入

2 3

输出

3 3
##.
..#
#.#

样例 2

输入

7 8

输出

3 5
#.#.#
.#.#.
#.#.#

样例 3

输入

1 1

输出

4 2
..
#.
##
##

样例 4

输入

3 14

输出

8 18
..................
..................
....##.......####.
....#.#.....#.....
...#...#....#.....
..#.###.#...#.....
.#.......#..#.....
#.........#..####.

说明/提示

注释

两个白色格子 c1c_1c2c_2 连通,指的是可以通过只经过白色格子、每次只移动到上下左右相邻的格子,从 c1c_1 走到 c2c_2

白色格子的集合 SS 是一个连通块,指的是 SS 满足以下条件:

  • SS 中任意两个格子都是连通的。
  • 不属于 SS 的任何白色格子,与 SS 中的任意格子都不连通。

黑色格子的连通块定义同理。

约束条件

  • 1A5001 \leq A \leq 500
  • 1B5001 \leq B \leq 500

样例解释 1

以下输出对应的网格如下所示。

由 ChatGPT 4.1 翻译