Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024

2020-2022 2023 Regulations Schedule RODO info Ranking

Problem description


Łańcuch ozdobny
(E)
Limit pamięci: 64 MB
Limit czasu: 1.00 s

Do dekoracji domu Jasia przydałby się także ładny, ozdobny łańcuch. Jasio nie lubi chaosu i braku ładu, a taki łatwo otrzymać rozwieszająć łańcuch z oczkami w wielu kolorach, z których żaden się przebija. Dlatego Jasio chciałby, aby najczęściej występujący kolor oczek w jego łańcuchu, występował na ponad połowie oczek.
Gospodarzowi szkoda złociszy na stworzenie nowego łańcucha, dlatego chciałby wykorzystać stary, znaleziony w piwnicy. Pomóż Jasiowi, napisz dla niego program, który sprawdzi czy ze starego łańcucha da się wyciąć kawałek o pożądanej przez Jasia własności. Uwaga! Jedno oczko to żaden łańcuch, dlatego Jasia interesują fragmenty złożone z co najmniej dwóch oczek.

Wejście

W pierwszym wierszu wejścia znajduje się pojedyncza liczba naturalna n, oznaczająca liczbę oczek starego łańcucha znalezionego przez Jasia w piwnicy. W drugim wierszu wejścia znajduje się jedno słowo s składające się z n (s1, s2, s3...sn) małych znaków alfabetu angielskiego. Różne litery odpowiadają różnym kolorom oczek łańcucha.

Wyjście

W pierwszym (jedynym) wierszu wyjścia należy wypisać dwie liczby naturalne l < r, takie, że fragment starego łańcucha sl, sl + 1, ...sr zawiera co najmniej t wystąpień pewnego koloru, gdzie $t > \lfloor \frac{r-l+1}{2} \rfloor$. Możesz wypisać indeksy odpowiadające dowolnemu z takich fragmentów. Jeśli taki fragment nie istnieje, zamiast tego należy wypisać pojedyncze słowo NIE.

Ograniczenia

1 ≤ n ≤ 200000.

Przykład

Wejście Wyjście Wyjaśnienie
5
solve
NIE

Nie istnieje fragment łańcucha o pożądanej własności.

Wejście Wyjście Wyjaśnienie
6
ananas
1 5

Fragment anana zawiera 3 literki a, co stanowi ponad połowę jego długości.

Wejście Wyjście Wyjaśnienie
8
accepted
2 4

Fragment cce zawiera 2 literki c, co stanowi ponad połowę jego długości.