Stāsts
Dotam vārdam par tā anagrammām sauc visus vārdus, kas iegūti no burtiem, visus tos saliekot kaut kādā secībā. Atšķirībā no reālās dzīves, arī bezjēdzīgus burtu virknējumus uzskatīsim par derīgām anagrammām. Ievērsiet, ka pats vārds arī ir viena no anagrammām. Uzrakstīsim visas anagrammas pēc kārtas leksikogrāfiskā secībā (vārds leksikogrāfiskā secībā atrodas pirms vārda , ja pirmais atšķirīgais burts pēc kārtas vārdā alfabētā atrodas pirms atbilstošā vietā esošā burta vārdā ) un meklēsim šajā sarakstā doto vārdu .
Piemēram, ja ir "suns", tad visas tā anagrammas leksikogrāfiskā secībā ir:
nssu, nsus, nuss, snsu, snus, ssnu, ssun, suns, susn, unss, usns, ussn
un vārds “suns” šajā virknē ir astotais pēc kārtas.
Uzrakstiet datorprogrammu, kas dotam vārdam nosaka, kurš pēc kārtas tas ir savu leksikogrāfiski sakārtoto anagrammu sarakstā!
Ievaddati
Pirmajā rindā dota naturāla skaitļa (vārda garums, ) vērtība.
Otrajā rindā dots vārds – latviešu alfabēta mazo burtu bez diakritiskajām zīmēm virkne.
Izvaddati
Izvaddatu vienīgajā rindā jābūt naturālam skaitlim – dotā vārda kārtas numuram leksikogrāfiski sakārtotā tā anagrammu sarakstā. Kārtas numurs jāizvada pēc moduļa . Izvadīšanai pēc moduļa nav nekāda cita nozīme, kā vien samazināt izvadāmā skaitļa lielumu.
Apakšuzdevumi un to vērtēšana
| # | Apakšuzdevuma apraksts | Punkti |
|---|---|---|
| 1. | Uzdevuma tekstā dotie trīs testi | 2 |
| 2. | 10 | |
| 3. | , vārdā izmantoti tikai divi dažādi burti | 10 |
| 4. | , vārdā neviens burts neatkārtojas | 10 |
| 5. | 20 | |
| 6. | Bez papildu ierobežojumiem | 48 |
Piemēri
Ievaddati
4
suns
Izvaddati
8
Ievaddati
4
aita
Izvaddati
4
Ievaddati
4
zivs
Izvaddati
20
1. apakšuzdevuma ievaddati
5
cauna
6
dzenis
10
salamandra