Đoạn có đúng K giá trị phân biệt
Đề bài
Mô tả
Cho dãy gồm số nguyên và một số nguyên .
Ta gọi () là một đoạn tốt nếu trong các phần tử có đúng giá trị đôi một khác nhau.
Một đoạn tốt được gọi là tối tiểu theo quan hệ bao hàm nếu không tồn tại đoạn tốt nào khác nằm hoàn toàn bên trong nó, tức là không có thoả mãn và cũng là đoạn tốt.
Lưu ý rằng đoạn cần tìm không nhất thiết phải ngắn nhất trong số tất cả các đoạn tốt của dãy, nó chỉ cần không chứa đoạn tốt nào nhỏ hơn bên trong.
Hãy tìm một đoạn tốt tối tiểu theo quan hệ bao hàm.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- Dòng thứ hai chứa số nguyên .
Dữ liệu ra
In ra hai số nguyên và cách nhau bởi dấu cách, mô tả một đoạn tốt tối tiểu theo quan hệ bao hàm.
Nếu không tồn tại đoạn nào thoả mãn, in ra -1 -1.
Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 2 1 2 2 3 |
1 2 | Đoạn gồm hai giá trị khác nhau là và . Không đoạn con thực sự nào của nó (tức hoặc ) có đúng giá trị khác nhau. Đáp án cũng được chấp nhận. |
| 8 3 1 1 2 2 3 3 4 5 |
2 5 | Đoạn chứa các giá trị . Bỏ đi thì còn (chỉ giá trị), bỏ đi thì còn (chỉ giá trị), nên nó tối tiểu theo bao hàm. Nó không phải đoạn ngắn nhất: chỉ dài và cũng có giá trị khác nhau, nhưng không nằm trong nên không vi phạm điều kiện. |
| 7 4 4 7 7 4 7 4 7 |
-1 -1 | Cả dãy chỉ có giá trị khác nhau là và , không thể có đoạn nào chứa đúng giá trị. |
Bình luận