AT_agc031_b.[AGC031B] Reversi

普及+/提高

通过率:0%

AC君温馨提醒

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

题目描述

有 NN 个石头排成一列,从左到右第 ii 个石头被涂上了颜色 CiC_i。

すぬけ君可以进行如下操作,任意次数(可以为 00 次):

  • 选择两个被涂成相同颜色的石头,将它们之间所有石头的颜色都改为这两块石头的颜色。

请你求出,最终可能得到的石头颜色序列有多少种,将答案对 109+710^9+7 取模。

输入格式

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

NN C1C_1 C2C_2 ⋯\cdots CNC_N

输出格式

输出最终可能得到的石头颜色序列的种数,对 109+710^9+7 取模。

输入输出样例

  • 输入#1

    5
    1
    2
    1
    2
    2

    输出#1

    3
  • 输入#2

    6
    4
    2
    5
    4
    2
    4

    输出#2

    5
  • 输入#3

    7
    1
    3
    1
    2
    3
    3
    2

    输出#3

    5

说明/提示

限制条件

  • 1≤N≤2×1051 \leq N \leq 2 \times 10^5
  • 1≤Ci≤2×105 (1≤i≤N)1 \leq C_i \leq 2 \times 10^5\ (1 \leq i \leq N)
  • 输入均为整数

样例解释 1

可以得到以下 33 种石头颜色序列。

  • 不进行操作,得到 (1,2,1,2,2)(1,2,1,2,2)
  • 选择第 11、33 个石头进行操作,得到 (1,1,1,2,2)(1,1,1,2,2)
  • 选择第 22、44 个石头进行操作,得到 (1,2,2,2,2)(1,2,2,2,2)

由 ChatGPT 4.1 翻译

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

首页