仅此而已

· · 题解

Source & Knowledge

2024 年 8 月语言月赛,由洛谷网校入门计划/基础计划提供。

考察综合模拟。

文字题解

按题意模拟。

使用三维数组 a[][][] 来模拟小木箱。a[x][y][] 记录 (x,y) 存放的日记编号。用 二维数组 top[][] 来记录每一个小格子已经存放的日记数目,top[x][y] 表示 (x,y) 已经存放的日记数目。

对于输入的一篇日记,需要存放到 (x,y),编号为 id,首先检查 top[x][y] 的值

则说明 (x,y) 已经放满了,我们需要遍历 a[x][y][],记录下最小值与最小值的位置,假设最小值为 a[x][y][pos]pos 即为位置,那么需要移动的日记份数即为 k-pos

之后,进行数组的移动,将 i>posa[x][y][i] 移动到 a[x][y][i-1]。最后将新的日记存入 (x,y),即 a[x][y][k] 赋值为 id

直接将 top[x][y] 增加 1,将 a[x][y][top[x][y]] 赋值为 id

视频题解