raspandaci

Time limit: 0.7s Memory limit: 32MB Input: raspandaci.in Output: raspandaci.outPoints by default: 10p

De câte ori trebuie să transmită un mesaj URGENT!!! directorul şcolii noastre are o mare problemă. Indiferent de canalul de comunicare pe care îl foloseşte (e-mail, what’s app, site-ul şcolii etc.), întotdeauna vor exista elevi la care mesajul nu ajunge sau nu ajunge în timp util. După multe încercări, a decis să numeroteze cei nn elevi din şcoală cu numere distincte de la 11 la nn şi să studieze relaţiile de comunicare dintre elevi. Apoi, bazându-se pe aceste relaţii de comunicare, să aleagă un număr minim de elevi-răspândaci cărora să le transmită mesajul direct, urmând ca aceasta să fie transmis la absolut toţi elevii, prin relaţiile de comunicare dintre aceştia.

Cerință

Să se scrie un program care, cunoscând relaţiile de comunicare dintre elevi, determină numărul minim de răspândaci necesari pentru ca mesajul directorului să ajungă în timp util la toţi elevii din şcoală.

Date de intrare

Fişierul de intrare raspandaci.in conţine pe prima linie numărul natural nn, reprezentând numărul de elevi din şcoală. Pe următoarele linii se află perechi de numere naturale x yx \ y (1x,yn1 \leq x, y \leq n) cu semnificaţia că elevul xx transmite imediat elevului yy orice mesaj primit.

Date de ieșire

Fișierul de ieșire raspandaci.out va conţine o singură linie pe care va fi scris numărul minim de răspândaci, necesari pentru ca mesajul directorului să ajungă în timp util la toţi elevii din şcoală.

Restricții și precizări

  • 2n1052 \leq n \leq 10^5;
  • Numărul de relații de comunicare între elevi din fișierul de intrare este 400 000\leq 400 \ 000;
  • Un elev poate să comunice mesajul chiar și lui însuși.
# Punctaj Restricții
0 10 Din oficiu
1 30 2n1002 \leq n \leq 100
2 11 100<n1 000100 \lt n \leq 1 \ 000
3 49 Fără restricții suplimentare

Exemplu

raspandaci.in

6 
2 1 
1 6 
3 4 
4 1 
3 5 
4 3 
5 1 
6 5

raspandaci.out

2

Explicație

Cei doi răspândaci ar putea fi elevii 22 şi 33. Dacă directorul transmite mesajul elevului 22 aceasta va ajunge şi la elevii 11, 55, şi 66.
Dacă în plus transmite mesajul şi elevului 33 acesta va ajunge şi la elevul 44.

O altă soluţie posibilă ar fi ca directorul să transmită mesajul elevilor 22 şi 44.

Log in or sign up to be able to send submissions!