Táto úloha je programátorská. Ako svoje riešenie odovzdaj program vo svojom obľúbenom jazyku a automaticky sa dozvieš, koľko si dostal/a bodov. Ak si takýto typ úloh ešte nikdy neriešil/a, skús sa pozrieť ako by mal vyzerať ideálny program. Ak zatiaľ programovať nevieš, ale chcel/a by si sa naučiť, môžeš skúsiť našu KSP School.
Ak máte akékoľvek otázky ohľadom tejto úlohy, napíšte Kubovi ([email protected]) alebo Ivke ([email protected]).
Dobrodruh Štepi sa rozhodol ísť na výpravu. Nechcel ísť sám, tak zo sebou zobral kuchárku Mišku, aby nehladovali. No a aby sa nenudili, išla s nimi aj papagáj Hanka. Nachystali sa, zbalili kopu vecí, veľa jedla, a vyrazili. Zopár dní sa túlali po pralesoch, keď zistili, že sa im míňajú zásoby jedla. Hanka vyletela nad stromy a v diaľke zbadala dedinu. Vydali sa smerom k nej a dúfali, že miestni budú priateľskí.
V dedine do ktorej Štepi dorazil mal však problém. Nevedel, ako komunikovať s domorodcami. Domorodci používajú zvláštny jazyk, v ktorom sa každá veta skladá z rôznej množiny znakov bez medzier. Aby to nebolo dosť zvláštne, vedia ich vnímať iba ak sú v podobe palindrómov. Ak by im Štepi povedal niečo čo nie je palindróm, začali by sa naňho ozaj škaredo a nechápavo pozerať a to on nerád.
Štepi by s nimi chcel vedieť komunikovať, no sám to nezvládne, nakoľko má žiaľ aibofóbiu (fóbiu z palindrómov). Potreboval by preto od teba pomoc s komunikáciou s domorodcami.
Úloha
Štepi by chcel domorodcom povedať \(T\) viet, pre ktoré už má množiny znakov priparvené. Od teba potrebuje, aby si ich naformuloval/a do palindrómov. Je však možné, že urobil chybu, a v tom prípade sa palindróm vytvoriť nedá. Ak na takú vetu narazíš, daj mu vedieť.
Formát vstupu
Na prvom riadku dostaneš jedno číslo \(T\) (\(1 \leq T \leq 2000\)) označujúce počet viet, ktoré Štepi potrebuje naformulovať. Nasleduje \(T\) dvojíc riadkov. Na prvom riadku z dvojice je číslo \(1 \leq N \leq 10^5\) udávajúce počet znakov vo vete a na druhom riadku z dvojice je nenaformulovaná veta, skladajúca sa z \(N\) znakov malej anglickej abecedy.
Exituje 5 sád vstupov, každá za 20 bodov. V jednotlivých sadách platia nasledovné obmedzenia:
Sada | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|
\(1 \leq T \leq\) | \(10\) | \(50\) | \(500\) | \(2000\) | \(50\) |
\(1 \leq N \leq\) | \(10\) | \(50\) | \(200\) | \(2000\) | \(10^5\) |
Formát výstupu
Pre každú vetu vypíšte na zvlášť riadok jej formuláciu v podobe
palindróm, prípadne ak sa nedá naformulovať do podoby palidnrómu,
vypíšte CHYBA
.
Ak existuje viacero spôsobov naformulovania vety, vypíšte ľobovoľný z nich.
Príklad
Input:
5
5
abbaa
4
abbb
6
zxyxxz
10
apkrrsapsk
11
mpfsxkmskpf
Output:
ababa
CHYBA
CHYBA
praskksarp
fkmspxpsmkf
Prvú vetu by sme mohli naformulovať napr. aj ako
baaab
. Podobne to platí aj pre ostatné vety, ktoré
sa dajú naformulovať ako palindróm.
Odovzdávanie
Na odovzdávanie sa musíš prihlásiť
Otázky a diskusia
Po skončení kola budete mať príležitosť na diskutovanie o riešeniach v diskusii pod vzorovým riešením.