CF961A Tetris
题目描述
给定如下过程。
有一个长度为 $n$ 的平台,有 $n$ 列。$1 \times 1$ 的方块会依次出现在平台的某些列上。如果某一列没有方块,则方块会占据该列的最底部一行;否则,方块会出现在该列最高方块的正上方。
当所有 $n$ 列都至少有一个方块时,最底部的一行会被移除。你会因此获得 $1$ 分,剩下的所有方块会整体下落一行。
你的任务是计算你最终能获得多少分。
输入格式
输入的第一行包含两个整数 $n$ 和 $m$($1 \le n, m \le 1000$),分别表示平台的长度和方块的数量。
下一行包含 $m$ 个整数 $c_1, c_2, \dots, c_m$($1 \le c_i \le n$),表示第 $i$ 个方块会出现在第 $c_i$ 列。
输出格式
输出一个整数,表示你能获得的分数。
说明/提示
在样例中,答案为 $2$,因为在第 $6$ 个方块出现后会移除一行(此时各列方块数为 $[2~ 3~ 1]$,移除一行后变为 $[1~ 2~ 0]$)。
在第 $9$ 个方块出现后,各列方块数为 $[2~ 3~ 1]$,移除一行后变为 $[1~ 2~ 0]$。
所以答案为 $2$。
由 ChatGPT 4.1 翻译