{"code":"divide","name":"Dãy ngọc (Chọn ĐT'20-21)","description":"Sau khi chơi với ngọc chán chê, Tí sắp $n$ viên ngọc ra một đường thẳng và bắt đầu nhìn ngắm chúng. Tí nhận thấy rằng có không quá $k$ màu ngọc khác nhau trên bàn và viên ngọc thứ $i$ từ trái sang thì có màu $a_i$. Tí muốn chia dãy ngọc thành các đoạn liên tiếp sao cho mỗi đoạn đều có đủ $k$ màu. Hỏi Tí có bao nhiêu cách chia thỏa mãn như vậy?\r\n\r\n**Yêu cầu**: In số cách chia thỏa mãn sau khi $\\mod 10^9+7$\r\n\r\n####Input  \r\n- Dòng đầu tiên chứa hai số nguyên dương $n,k$.\r\n- Dòng thứ hai chứa $n$ số nguyên $a_1,a_2,...,a_n$.\r\n\r\n####Output\r\n- Ghi ra một số nguyên là kết quả bài toán.\r\n\r\n####Constraints\r\n- $1\\leq k\\leq n\\leq 10^6$\r\n- $1\\leq a_i\\leq k$\r\n\r\n####Scoring\r\n- Subtask $1$ ($20\\%$ số điểm): $k = 1$.\r\n- Subtask $2$ ($20\\%$ số điểm): $n\\leq 5000$.\r\n- Subtask $3$ ($20\\%$ số điểm): $n\\leq 10^5, k\\leq 100$.\r\n- Subtask $4$ ($40\\%$ số điểm): Không có ràng buộc gì thêm.\r\n\r\n####Example\r\n!!! question \"Test 1\"\r\n    ???+ \"Input\"\r\n        ```sample\r\n        5 2\r\n        1 2 2 1 2 \r\n        ```\r\n    ???+ success \"Output\"\r\n        ```sample\r\n        3\r\n        ```\r\n    ??? warning \"Note\"\r\n        Có 3 cách chia như sau: $(1\\ 2) | (2\\ 1\\ 2), (1\\ 2\\ 2) | (1\\ 2)$, hoặc $(1\\ 2\\ 2\\ 1\\ 2)$.","points":500.0,"partial":true,"time_limit":1.0,"memory_limit":262144,"short_circuit":false,"allowed_languages":[3,4,34,36,37,5,6,11,12,14,28,2,38,39,9,18,17,29,23,27,35,25,26,10,7,19,32,1,8,15,16,24,20,33,13,41,21,40],"is_public":true,"is_manually_managed":false,"permissions":{"can_edit":false}}