AT_birthday0410_b.ライスゲーム
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
显然,问题中的“虱子游戏”规则与康威生命游戏完全相同。因此需考虑无限网格上的生命游戏。
生命游戏中,无限网格上的每个细胞存在“生”或“死”两种状态。初始时设定若干个细胞为“生”细胞,其余细胞为“死”细胞。细胞的下一代状态由细胞的当前状态及周边八个细胞的状态决定。具体规则如下:
- “生”细胞:若周边“生”细胞数为 2 或 3 个,则保持“生”(否则转为“死”)
- “死”细胞:若周边“生”细胞数恰好为 3 个,则转为“生”(否则保持“死”)
可参考维基百科生命游戏条目中的相同规则描述。
若一组“生”细胞配置中,任意“生”细胞均可通过在八个方向上相邻的“生”细胞到达其他“生”细胞,则称该配置为一个八向连通配置。
请编写程序,找出一个由 N 个“生”细胞构成的八向连通配置,该配置需满足:经过任意次迭代后,配置完全不变(即初始 N 个“生”细胞始终为“生”细胞,其余细胞始终为“死”细胞)。
输入格式
N
N 表示“生”细胞的数量。
输出格式
S1
S2
…
SN
对于正整数 i(1≤i≤N),Si 为一个长度为 N 的字符串,表示细胞状态。这 N 个字符串可以看作从无限网格中截取的 N×N 区域。
所有 Si 仅由 . 或 # 这两种字符组成,. 表示“死”细胞,# 表示“生”细胞。所有 Si 中 # 的总数必须恰好为 N,且所有 # 需构成一个八向连通配置。
若不存在满足条件的配置,则输出 -1。
输入输出样例
输入#1
4
输出#1
.... .##. .##. ....
输入#2
1
输出#2
-1
说明/提示
【数据范围】
- Subtask 1(1 分):1≤N≤8。
- Subtask 2(99 分):无特殊限制。
对于全部数据,1≤N≤1000。
部分翻译由 Deepseek 生成。
输入解题思路,AI测评打分。不知道怎么写?