题目背景
T. B. D.
普通数独的规则为:在每个单元格中填入 1 到 9 之间的一个整数,使得任何行、列或粗体标注的 3×3 区域中的数字都不重复。
题目描述
考虑一种数独的变体——温度计数独:普通数独规则适用。网格中包含一些温度计形状,数字必须严格从球状部分到扁平部分递增。如果你不知道普通数独规则,请查看【题目背景】。
现在考虑下面的一个温度计数独:

容易发现,由于第 1 行的温度计从 2 开始,7 结束,并且由 6 个数组成,因此第 1 行第 2∼7 列可以确定依次是 2∼7。
同理,给定一个值域在 [0,106] 上的严格递增正整数序列 {an},如果隐去其中的若干个数字后,加上严格递增的条件,依旧有可能还原出原来的序列。
例如,令 a=[1,2,3,5],则
- 若隐去 a1,a2,得到 [∗,∗,3,5],由于 1≤a1<a2<3,可以确定 a1=1,a2=2,由此还原。
- 若隐去 a3,得到 [1,2,∗,5],则只能推断出 a3∈{3,4},无法还原。
现在,你需要确定,你最多可以隐去多少个数字,使得隐去后依旧可以还原得到最初的序列。
输入格式
从文件 increase.in 中读入。
第一行一个整数 n,表示序列 a 的长度。
第二行 n 个整数,描述序列 a。
输出格式
输出到文件 increase.out 中。
输出仅一行一个整数,表示你最多可以隐去的数字数量。
输入输出样例
输入样例 1
4
1 2 3 5
输出样例 1
2
样例 1 说明
容易发现,隐去 a1,a2 是最优的方法。解释见【题目描述】。
样例 2
见下发压缩包中 increase2.in 与 increase2.ans。
该样例符合测试点 1∼2 的限制。
样例 3
见下发压缩包中 increase3.in 与 increase3.ans。
该样例符合测试点 3∼5 的限制。
样例 4
见下发压缩包中 increase4.in 与 increase4.ans。
该样例符合测试点 7∼10 的限制。
说明
数据规模与约定
| 测试点 |
n≤ |
特殊性质 |
| 1∼2 |
20 |
/ |
| 3∼5 |
103 |
| 6 |
无特殊限制 |
A |
| 7∼10 |
/ |
对于 100% 的数据,有 1≤n≤106,1≤ai≤106,{an} 严格递增。