Phân đoạn các giá trị riêng biệt


Submit solution

Points: 3.2
Time limit: 1.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

Cho một dãy số chứa \(n\) số nguyên, nhiệm vụ của bạn là đếm số phân đoạn có tối đa \(k\) giá trị riêng biệt.

Đầu vào

Dòng đầu tiên chứa hai số nguyên \(n\) và \(k\).

Dòng tiếp theo chứa \(n\) các số nguyên \(x_1, x_2, …, x_n\).

Đầu ra

Một số nguyên duy nhất là số phân đoạn có các giá trị phân biệt.

Giới hạn

\(1 \le k \le n \le 2 * 10^5\)

\(1 \le x_i \le 10^9\)

Ví dụ

Đầu vào:

5 2
1 2 3 1 1

Đầu ra:

10

Giải thích: Có các phân đoạn thỏa mãn có tối đa hai giá trị riêng biệt : \((1), (2), (3), (1), (1), (1, 2), (2, 3), (3, 1), (1, 1), (3, 1, 1)\)


Comments