Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2018-03-17 14:06:14.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:permbit.in, permbit.outSursăAlgoritmiada 2018 Runda PreONI
AutorEugenie Daniel PosdarascuAdăugată deandreiiiiPopa Andrei andreiiii
Timp execuţie pe test0.5 secLimită de memorie262144 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Permbit

Se da un sir de M biti. Se permuta cu permutarea P de ordin M. Noul sir se cunoaste si se permuta din nou, tot cu permutarea P. Si tot asa. Pana se obtin N siruri. Gasiti:
a) O permutare P oarecare corecta
b) Permutarea mediana P (sortand lexicografic toate permutarile corecte, se considera cea care se afla la mijloc - in caz ca sunt permutari la mijloc, se considera cea mai mica lexicografic)
c) Numarul de permutari P corecte

Date de intrare

Fişierul de intrare permbit.in are pe prima linie numerele C, N si M, iar pe urmatoarele N linii cate un sir de M biti. C reprezinta tipul cerintei: 1 pentru cerinta a), 2 pentru cerinta b), 3 pentru cerinta c).

Date de ieşire

În fişierul de ieşire permbit.out se afla, daca C = 0, numarul de permutari corecte modulo 1.000.000.007, iar daca nu, o permutare, dupa caz, oarecare sau mediana.

Restrictii

  • 2 ≤ N, M, N * M &le 106
  • 10 puncte: N, M ≤ 8, 1 ≤ C ≤ 3
  • 10 puncte: N, M ≤ 300, C = 1
  • 10 puncte: N, M ≤ 300, C = 2
  • 10 puncte: N, M ≤ 300, C = 3
  • 10 puncte: N * M ≤ 106, C = 1
  • 20 de puncte: N * M ≤ 106, C = 2
  • 30 de puncte: N * M ≤ 106, C = 3

Exemplu

permbit.inpermbit.out
This is some
text written on
multiple lines.
This is another
text written on
multiple lines.

Explicaţie

...

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?