AT_tupc2022_f.Block Rotation
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一个 N×N 的格子。对于 i=1,2,…,N,从左起第 i 列的最底部有 Mi 个 1×1 的正方形小方块,每个方块都被涂上了颜色。这里 M1,M2,…,MN 是单调不增的。对于从左起第 i 列,从下往上第 j 个方块被涂上了颜色 Ci,j。
对于格子,考虑如下操作:
- 将整个格子顺时针瞬间旋转 90∘,然后所有有颜色的方块会根据重力“同时下落”。更为形式化地说,对于从左起第 i 列从下往上第 j 个方块,若与其同高、且在其右侧的方块有 ci,j 个(包括颜色为 0 的空格子),则该方块会被移动到从左起第 j 列,从下往上第 ci,j+1 个格子。此移动会对所有方块同时进行。
请问最少需要多少次操作,格子才能回到刚开始的状态?请输出对 998244353 取模后的结果。
格子配置的相同的定义如下:
将格子的配置对应为一个 N×N 的矩阵 A。Ai,j (i,j=1,2,…,N) 的定义如下:
- 若从左起第 i 列从下往上第 j 个格子中有方块,则其值为方块的颜色,否则为 0。
两次格子的配置相同,当且仅当它们对应的矩阵 A 完全相同。
输入格式
输入以如下格式从标准输入读入。
N M1 C1,1 C1,2 … C1,M1 M2 C2,1 C2,2 … C2,M2
⋮
MN CN,1 CN,2 … CN,MN
输出格式
输出操作次数的最小值,对 998244353 取模后的结果。
输入输出样例
输入#1
2 2 1 2 1 3
输出#1
3
输入#2
2 2 1 1 1 1
输出#2
1
输入#3
3 3 1 2 3 1 4 0
输出#3
6
输入#4
5 5 1 2 3 4 5 4 6 7 7 9 3 10 7 12 2 13 14 0
输出#4
22
说明/提示
样例解释 1
通过操作,颜色的分布将如下变化。本例中,经过 3 次操作后,状态会回到最初的状态。

数据范围
- 2≤N≤105
- 1≤i=1∑NMi≤105
- N≥M1≥M2≥⋯≥MN≥0
- 1≤Ci,j≤105
- 所有输入均为整数。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?