AT_ttpc2019_o oneesan puzzle

题目描述

你需要设计一个网格地图,使得从起点 `S` 到终点 `G` 的自回避路径(每条路径上的格子不能重复)数量正好是 $ N $。 ### 详细说明 oneesan 擅长快速解决如下问题: > 给定整数 $ N $, 高度 $ H $ 和宽度 $ W $,以及一个满足以下条件的 $ H \times W $ 网格地图: > > - 网格由 $ H $ 个字符串 $ S_1, S_2, \ldots, S_H $ 组成,每个字符串长度为 $ W $。 > - 每个网格中的位置可以是四种字符之一:墙壁 `#`、空地 `.`、起点 `S` 或终点 `G`。 > - 外围全是墙壁 `#`。 > - 网格中恰好只存在一个起点 `S` 和一个终点 `G`。 > > 在这个网格中,若从起点 `S` 移动至终点 `G` 时,只能通过上下左右相邻且非墙壁的格子实现。两条路径被认为不同是指它们所经过的格子序列长度不同,或者在某个位置上经过的格子不同。自回避路径意味着在路径中不重复经过同一格子。请判断在给定的网格地图中,不同的自回避路径数量是否等于 $ N $;若相等,则输出 `Yes`,否则输出 `No`。 oneesan 乐于计算自回避路径的数量,但觉得自己动手设计网格太乏味,因此希望你来帮助她进行网格设计。 根据给定的 $ N $,请构造一个能够令 oneesan 输出 `Yes` 的网格地图。**地图需符合一些规定,请查看输出格式部分。** 可以证明这些限制条件下总存在满足要求的解,任何符合条件的输出皆可接受。

输入格式

输入为一个整数 $ N $,表示需要设计一个有 $ N $ 条自回避路径的地图。

输出格式

输出应该如下格式: > $ H $ $ W $ $ S_1 $ $ \vdots $ $ S_H $ - $ H, W $ 是介于 $ 3 $ 到 $ 32 $ 的整数。 - $ S_1, \ldots, S_H $ 由字符 `#`、`.`、`S`、`G` 组成,表示网格地图。 - 每个 $ S_i $ 的长度均为 $ W $。 - 网格的最外围只能是 `#`。 - 网格中仅有一个 `S` 和一个 `G`。 - 从 `S` 到 `G` 的自回避路径数必须正好为 $ N $。

说明/提示

- $ N $ 是介于 $ 0 $ 到 $ 2,019 $ 的整数。 ### 样例解释 除了可能提供的样例,其他可能的解决方案也可以视为正确。 **本翻译由 AI 自动生成**