smart
Alice si Bob se plictisesc. Asa ca au decis sa joace un joc numit Smart. Jocul Smart se joaca pe un graf conex neorientat mai special, in sensul in care un nod din graf este marcat ca radacina. Jucatorii muta pe rand. O mutare consta in eliminarea unei muchii din graf. Daca prin eliminarea muchiei din graf unele noduri nu mai sunt legate cu nodul radacina, nodurile respective si muchiile adiacente nodurilor se elimina si ele. Jucatorul care nu mai poate efectua nici o mutare (nu mai sunt muchii in graf) pierde.
Cerinta
Scrieti un program care determina daca primul jucator are strategie sigura de castig.
Date de intrare
Datele de intrare se gasesc in fisierul smart.in. Fisierul contine 3 seturi de date, separate intre ele printr-o linie libera. Pe prima linie a unui set de date sunt scrise trei numere N, M si K (in aceasta ordine) separate prin spatii. N reprezinta numarul de noduri din graf si M numarul de muchii. Nodurile grafului sunt numerotate de la 0 la N - 1. K este nodul radacina. Pe urmatoarele M linii se gasesc cate doua numere A si B separate prin spatii, semnificand faptul ca intre nodurile A si B exista o muchie.Date de iesire
Fisierul smart.out va contine 3 linii, fiecare linie continand cifra 0 daca pentru setul respectiv de date jucatorul care incepe nu are strategie sigura de castig si cifra 1 daca are.
Restrictii
Exemplu
smart.in | smart.out |
4 3 0 3 2 0 6 5 0 |
1 0 1 |
Timp maxim de executie/test: 0.1 secunde
student Ciobaca
Stefan
Facultatea de Informatica Iasi
Contact: addictedtoprogramming at yahoo dot com