Fişierul intrare/ieşire: | locala.in, locala.out | Sursă | Algoritmiada 2017, Runda Finala, Juniors |
Autor | Mihai Calancea | Adăugată de | |
Timp execuţie pe test | 0.3 sec | Limită de memorie | 524288 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Locala
Dosoftei, in pregatire pentru Olimpiada Locala de Informatica, a incercat sa rezolve o problema ce tine de locale, dar nu a reusit. Puteti sa-l ajutati?
Se da un numar natural pozitiv N si doua multimi A si B, submultimi ale multimii {1...n}, de marime NA, NB respectiv. Trebuie sa creati o permutare a numerelor 1...n ce are ca minime locale, respectiv maxime locale, exact elementele multimilor A, respectiv B, sau sa semnalati ca nu exista niciuna care respecta aceasta conditie.
Date de intrare
Fişierul de intrare locala.in contine pe primul rand pe N, NA şi NB.
Pe al doilea rand apar NA numere naturale distincte ce reprezinta elementele lui A.
Pe al treilea rand apar NB numere naturale distincte ce reprezinta elementele lui B.
Date de ieşire
Fişierul de ieşire locala.out va contine pe primul rand permutarea gasita (daca exista), sau -1 daca nu exista niciuna.
Restricţii
- 1 ≤ N ≤ 300.000
- Un minim local este un element al permutarii ai carui vecini sunt mai mari ca el.
- Un maxim local este un element al permutarii ai carui vecini sunt mai mici ca el.
- Doua elemente sunt vecine daca sunt pe pozitii consecutive.
Exemplu
locala.in | locala.out |
---|---|
5 2 2 1 2 3 5 | 1 3 2 4 5 |
5 1 1 5 1 | -1 |
Explicaţie
In primul exemplu, permutarea contine ca minime locale doar pe 1 si pe 2, si ca maxime locale doar pe 3 si pe 5.
In al doilea exemplu, nu exista nicio permutare care are ca minim local pe 5.