Cerința
În regatul „Iluminia” există un laborator care conține o rețea de N
camere, fiecare cameră are lungimea P
și este reprezentată de o secvență de comutatoare, fiecare comutator având starea 0
(stins) sau 1
(aprins).
Regele dorește să construiască o cameră supremă pentru un experiment de mare anvergură. Această cameră supremă se obține prin aplicarea operației XOR (^
) asupra tuturor secvențelor de comutatoare. Regele vrea ca această cameră rezultată să fie „supremă”, adică să conțină doar comutatoare în starea 1
.
Deoarece acest lucru nu este garantat, regele are la dispoziție M
operații de flip. Fiecare flip inversează starea anumitor comutatoare dintr-o subsecență de lungime cel mult L
(0
devine 1
, iar 1
devine 0
). Comutatoarele care vor fi inversate sunt la discreția regelui.
Acest lucru înseamnă că regele are posibilitatea de a alege, dintr-o subsecență dată de comutatoare, care dintre acestea să fie inversate. El nu este obligat să inverseze toate comutatoarele din subsecența aleasă, ci poate alege doar anumite comutatoare, în funcție de cum consideră că este cel mai eficient pentru găsirea camerei supreme.
Sarcina ta este să găsești cea mai mică valoare L
pentru care există o succesiune de cel mult M
flip-uri (fiecare aplicată pe o subsecență de lungime cel mult L
) care să construiască camera supremă.
Date de intrare
Fișierul de intrare lumina.in
conține pe prima linie trei numere întregi: N
(numărul de camere), P
(lungimea fiecărei camere) și M
(numărul maxim de operații de flip).
Pe următoarele N
linii se află reprezentarea camerelor regelui.
Date de ieșire
Fișierul de ieșire lumina.out
va conține pe prima linie un singur număr întreg, reprezentând cea mai mică valoare a lui L
pentru care problema are soluție.
Restricții și precizări
1 ≤ N ≤ 10
1 ≤ P ≤ 100.000
1 ≤ M ≤ 100.000
Exemple:
lumina.in
3 5 2 00011 01100 11101
lumina.out
2
Explicație
Regele decide să aplice o operație de flip cu L = 2
pe poziția 2
din camera 1
(schimbând atât starea comutatorului 2
cât și 3
) și pe poziția 5
din camera 3
(schimbând doar starea comutatorului 5
de la 1
la 0
).
Calculul camerei supreme după operație: 01111 ˆ 01100 ˆ 11100 = 11111
lumina.in
2 9 2 101011000 000001101
lumina.out
3
Explicație
Regele decide să aplice o operație de flip cuL = 3
pe poziția 2
din camera 1
schimbând starea comutatoarelor 2
și 4
) și pe poziția 6
din camera 1
o operație de flip cu L = 3
(schimbând starea comutatoarelor 6
și 8
).
Calculul camerei supreme după operație: 111110010 ˆ 000001101 = 111111111
.