binar
Sa consideram
o secventa de N cifre binare
B=(b1,
b2, ..., bN). Construim matricea M
dupa cum urmeaza:
- prima linie a matricei M este
secventa B;
- fiecare linie a matricei M
(exceptând prima linie) se obtine din linia precedenta printr-o permutare
circulara catre stânga.
b1 b2
... bN-1 bN
b2 b3 ... bN b1
...
bN-1 bN ... bN-3 bN-2
bN b1 ... bN-2 bN-1
Apoi, liniile matricei
M sunt sortate lexicografic (evident,
0<1).
Cerinta
Scrieti un program care sa citeasca ultima coloana a matricei M
(dupa sortarea lexicografica a liniilor) si care sa determine prima linie a
matricei M (de asemenea, dupa
sortarea lexicografica a liniilor).
Date de
intrare
Fisierul de intrare binar.in
contine pe prima linie un numar natural N,
care reprezinta lungimea secventei binare B.
Pe cea de a doua linie a fisierului de intrare se afla N
cifre binare, separate prin câte un spatiu, reprezentând ultima
coloana a matricei M.
Date de
iesire
Fisierul de iesire binar.out
va contine o singura linie pe care vor fi scrise N
cifre binare reprezentând prima linie a matricei M.
Cele N cifre binare nu vor fi
separate prin spatii.
Restrictii
0 < N <= 1000
Exemple
binar.in | binar.out | binar.in | binar.out |
5 1 0 0 1 0 |
00011 | 8 1 1 0 1 1 0 1 0 |
00111011 |
Marinel
Serban
Liceul de Informatica "Gr. C. Moisil" Iasi
marinel_serban@yahoo.com