John testeaza
o aplicatie realizata de colegul sau de banca. În timpul testarii aplicatiei,
a aparut pe ecran o fereastra de dialog cu n
butoane de tip radio (numerotate de la 1 la n).
Asa cum se stie, când este selectat un buton radio, toate celelalte butoane
devin neselectate. Din pacate, butoanele radio din aceasta fereastra nu functioneaza
corect. În fereastra proiectata de colegul sau, când este selectat
un buton radio neselectat, numai unele dintre celelalte butoane devin neselectate,
celelalte mentinându-si pozitia curenta. John a studiat comportamentul
butoanelor si stie care este efectul selectarii fiecarui buton radio.
Cerinta
Scrieti un program care
sa determine numarul minim de selectari de butoane, astfel încât
la final numai butonul 3 sa fie selectat, celelalte butoane fiind neselectate.
Date de
intrare
Fisierul de intrare radio.in
contine pe prima linie numarul natural n
reprezentând numarul de butoane radio. Pe cea de a doua linie
se afla o succesiune de n
cifre binare, separate prin câte un spatiu, reprezentând, în
ordine, starea butoanelor la momentul initial (1
semnifica buton selectat, iar 0
buton neselectat). Urmatoarele n
linii descriu, în ordine, comportamentul celor n
butoane.
Mai exact, pe cea de a i-a
linie dintre cele n se
afla un numar natural k
urmat de o secventa crescatoare de numere de butoane a1
a2 ... ak, separate prin câte un spatiu, cu semnificatia "când
butonul i este selectat,
butoanele a1, a2, ...., ak
devin neselectate".
Date de
iesire
Fisierul de iesire radio.out
va contine o singura linie pe care va fi scris numarul minim de butoane ce trebuie
sa fie selectate pentru ca în final butonul 3 sa fie selectat, iar toate
celelalte n-1 butoane
sa fie neselectate.
Restrictii si precizari
2 < n < 20
Este posibil ca prin
selectarea unui buton nici unul dintre celelalte n-1
butoane sa nu devina neselectat.
Evident, în lista
de butoane care devin neselectate prin selectarea butonului i
nu apare butonul i.