#arc150f. [arc150_f]Constant Sum Subsequence

[arc150_f]Constant Sum Subsequence

题目描述

我们有一个长度为N2N^2的正整数序列 A=(A1,A2,,AN2)A=(A_1, A_2, \dots, A_{N^2}),以及一个正整数 SS。对于这个正整数序列,对于任意的正整数 i (1iN2N)i\ (1\leq i \leq N^2-N),都有 Ai=Ai+NA_i=A_{i+N},只有 A1,A2,,ANA_1, A_2, \dots, A_N 给定作为输入。

寻找最小的整数 LL,使得每个和为 SS 的正整数序列 BB 都是正整数序列 (A1,A2,,AL)(A_1, A_2, \dots, A_L) 的一个(不一定连续的)子序列。

在问题的约束条件下,至少存在一个这样的 LL

约束条件

  • 1N1.5×1061 \leq N \leq 1.5 \times 10^6
  • 1Smin(N,2×105)1 \leq S \leq \min(N,2 \times 10^5)
  • 1AiS1 \leq A_i \leq S
  • 对于每个正整数 x (1xS)x\ (1\leq x \leq S)(A1,A2,,AN)(A_1, A_2, \dots, A_N) 中至少含有一个值为 xx 的元素。
  • 输入中的所有值都是整数。

输入

从标准输入读取输入数据的格式如下:

NN SS A1A_1 A2A_2 \dots ANA_N

输出

输出答案。


示例输入 1

6 4
1 1 2 1 4 3

示例输出 1

9

有八个序列 BB 可以考虑:$B=(1, 1, 1, 1), (1, 1, 2), (1, 2, 1), (1, 3), (2, 1, 1), (2, 2), (3, 1), (4)$。

例如,对于 L=8L=8,序列 B=(2,2)B=(2, 2) 不是 (A1,A2,,A8)=(1,1,2,1,4,3,1,1)(A_1,A_2, \dots, A_8)=(1, 1, 2, 1, 4, 3, 1, 1) 的子序列。

另一方面,对于 L=9L=9,每个 BB 都是 (A1,A2,,A9)=(1,1,2,1,4,3,1,1,2)(A_1,A_2, \dots, A_9)=(1, 1, 2, 1, 4, 3, 1, 1, 2) 的子序列。


示例输入 2

14 5
1 1 1 2 3 1 2 4 5 1 1 2 3 1

示例输出 2

11

示例输入 3

19 10
1 6 2 7 4 8 5 9 1 10 4 1 3 1 3 2 2 2 1

示例输出 3

39