#L0381. 序列压缩

序列压缩

题目描述

小明拿到了一个长度为 nn 的正整数序列 a1,a2,,ana_1, a_2, \ldots, a_n

他可以对这个序列执行若干次操作。每次操作的规则如下:设操作前序列长度为 mm,选择一个整数 ii1im11 \le i \le m - 1),且满足 aiai+1a_i \ne a_{i + 1},然后删除 ai+1a_{i + 1},并将 aia_i 修改为任意整数

求最多能执行多少次操作。

输入格式

第一行包含一个正整数 nn,表示序列的初始长度。

第二行包含 nn 个正整数 a1,a2,,ana_1, a_2, \ldots, a_n

输出格式

一行一个非负整数,表示最多能进行的操作次数。

样例

2
1 2
1
3
1 1 1
0
4
1 1 45 14
3

提示

【样例解释 #1】

选择 i=1i = 1,此时 a1=1a2=2a_1 = 1 \ne a_2 = 2,删除 a2a_2 并将 a1a_1 设为 33。序列变为 [3][3],无法继续操作。答案为 11

【样例解释 #2】

序列所有元素均为 11,不存在相邻不同元素,无法进行任何操作。答案为 00

【数据范围】

本题采用捆绑测试且开启子任务依赖。

子任务编号分值$n \le$特殊性质子任务依赖
$1$$34$$2$
$2$$19$$10^5$$a_1 = a_2 = \cdots = a_n$
$3$$47$$10^5$$1, 2$

对于所有数据,满足 1n1051 \le n \le 10^51ai1091 \le a_i \le 10^9

难度 普及-
通过率
尝试 0
已通过 0
ID
1109
类型
传统题
Time Limit
1000ms
Memory Limit
512MiB
上传者