Diferente pentru problema/laundering intre reviziile #7 si #8

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="laundering") ==
Se dă un şir $S$. Se cere să să găsească anagrama sa $A$ minimă lexicografic cu proprietatea că distanţa Hamming dintre $S$ şi $A$ este $|S|$. Dacă nu există o astfel de anagramă, răspunsul este $-1$.
Ieşi din bloc cu mare avânt, dar te opreşti, fiindcă te întâlneşti cu Băbel, proprietarul librăriei de la parter. Problema nu este atât că te-ai întâlnit tu cu el, ci că s-a întâlnit el cu tine. Este foarte trist fiindcă trebuie să închidă librăria, fiindcă nu produce niciun ban, un defect care tinde să afecteze afacerile în general. Acum vrea să deschidă o altă afacere în acelaşi loc. Pentru a scăpa de vechea reputaţie (şi de ghinion) el ar dori să schimbe numele firmei în ceva complet diferit.
 
Formal, numele curent al firmei sale este un sir de litere mici ale alfabetului englez, sa il numim $A$. Daca noul nume va fi $B$, atunci el nu doreste sa existe niciun indice $i$ astfel incat al $i$-lea caracter din $A$ sa fie egal cu al $i$-lea caracter din $B$. Mai mult, fiindca are evidente probleme financiare, ar dori sa nu foloseasca alte litere decat cele din $A$, ci doar sa le permute pe acestea (lucru care va fi oricum dificil de realizat, fiindca sunt din fier). Dintre toate numele noi posibile, l-ar dori pe cel *minim lexicografic*, tot din motive de noroc.
 
Tu ţi-ai cam dat seama că Băbel nu are nicio şansă în afaceri din momentul în care a decis să monteze o masă de biliard în librărie. Dar dacă nu-l ajuţi acum, nu mai scapi de el câteva luni. Deci sarcina ta este acum următoarea:
Având un şir de caractere $A$, găseşte-i anagrama minimă lexicografic $B$ astfel încât $A$ şi $B$ să nu coincidă pe nicio poziţie sau constată că nu există o asemenea anagramă.
h2. Date de intrare
Fişierul de intrare $laundering.in$ conţine pe prima linie valoarea $T$, reprezentând numărul de teste din fişier. Urmează $T$ linii, fiecare conţinând câte un şir $S$.
Fişierul de intrare $laundering.in$ conţine pe prima linie valoarea $T$, reprezentând numărul de teste din fişier. Urmează $T$ linii, fiecare conţinând câte un şir $A$, reprezentând numele curent al firmei lui Băbel.
h2. Date de ieşire
În fişierul de ieşire $laundering.out$ vei printa $T$ stringuri răspuns.
În fişierul de ieşire $laundering.out$ se vor afla $T$ linii, fiecare conţinând câte un şir $B$, reprezentând răspunsul pentru testul corespunzător, dacă acesta are soluţie sau valoarea $-1$ dacă cerinţa lui Băbel nu poate fi îndeplinită.
h2. Restricţii
* $1 ≤ T ≤ 100.000$
* Suma lungimilor lui $S$ în cadrul aceluiaşi fişier de intrare este cel mult $1.000.000$.
* Suma lungimilor lui $A$ în cadrul aceluiaşi fişier de intrare este cel mult $1.000.000$.
* $A$ va conţine doar litere mici ale alfabetului englez.
h2. Exemplu

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.