AT_arc181_f.[ARC181F] Colorful Reversi

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

有一个长度为 NN 的整数序列 A=(A1,A2,…,AN)A=(A_1,A_2,\dots,A_N)。对于该整数序列 AA,可以进行如下操作:

  • 选择满足 Al=Ar, Al+1=Al+2=⋯=Ar−1, Al+1≠AlA_l=A_r,\ A_{l+1}=A_{l+2}=\dots=A_{r-1},\ A_{l+1}\neq A_l 的 l,r (1≤l<r≤N)l,r\ (1\leq l < r \leq N)。将 Al+1,Al+2,…,Ar−1A_{l+1},A_{l+2},\dots,A_{r-1} 全部替换为 AlA_l。该操作的代价为 r−l−1r-l-1。

当不存在满足 Al=Ar, Al+1=Al+2=⋯=Ar−1, Al+1≠AlA_l=A_r,\ A_{l+1}=A_{l+2}=\dots=A_{r-1},\ A_{l+1}\neq A_l 的 l,r (1≤l<r≤N)l,r\ (1\leq l < r \leq N) 时,停止操作。请你求出一系列操作所需总代价的最小值。

输入格式

输入以如下格式从标准输入读入。

NN A1A_1 A2A_2 …\dots ANA_N

输出格式

请输出答案。

输入输出样例

  • 输入#1

    7
    1 2 3 2 3 2 1

    输出#1

    7
  • 输入#2

    5
    1 2 3 4 5

    输出#2

    0
  • 输入#3

    40
    1 2 3 4 5 6 7 8 7 6 5 6 7 8 7 6 5 4 3 2 2 1 2 3 4 5 4 5 6 7 8 7 7 6 5 6 6 7 8 8

    输出#3

    44

说明/提示

限制条件

  • 3≤N≤5×1053 \leq N \leq 5 \times 10^5
  • 1≤Ai≤N1 \leq A_i \leq N
  • 输入的所有值均为整数

样例解释 1

例如,依次进行 (l,r)=(3,5), (2,6), (1,7)(l,r)=(3,5),\ (2,6),\ (1,7) 的操作时,AA 会变为 (1,2,3,2,3,2,1)→(1,2,3,3,3,2,1)→(1,2,2,2,2,2,1)→(1,1,1,1,1,1,1)(1,2,3,2,3,2,1)\rightarrow (1,2,3,3,3,2,1)\rightarrow (1,2,2,2,2,2,1)\rightarrow (1,1,1,1,1,1,1),此时不存在满足条件的 l,rl,r。这一系列操作的总代价为 1+3+5=91+3+5=9。另一方面,依次进行 (l,r)=(2,4), (4,6), (1,7)(l,r)=(2,4),\ (4,6),\ (1,7) 的操作时,AA 会变为 (1,2,3,2,3,2,1)→(1,2,2,2,3,2,1)→(1,2,2,2,2,2,1)→(1,1,1,1,1,1,1)(1,2,3,2,3,2,1)\rightarrow (1,2,2,2,3,2,1)\rightarrow (1,2,2,2,2,2,1)\rightarrow (1,1,1,1,1,1,1),这一系列操作的总代价为 1+1+5=71+1+5=7。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页