Module: Cerca in profondità. DFS


Problem

11 /12


Banchetto

Problem

N persone molto importanti (VVP) sono state invitate al banchetto. Sono stati allestiti 2 tavoli. I tavoli sono abbastanza grandi in modo che tutti i partecipanti al banchetto possano sedersi a uno qualsiasi di essi. Il problema è che alcuni OVP non vanno d'accordo tra loro e non possono sedersi allo stesso tavolo. Ti è stato chiesto di determinare se è possibile che tutti gli OVP siano seduti a due tavoli.
 
Input: La prima riga dell'input contiene due numeri: N e M (1 <= N,M <= 100), dove N – il numero di ORP e M – il numero di coppie OVP che non possono sedersi allo stesso tavolo. Le successive righe M contengono 2 numeri – Coppie OVP che non riescono a sedersi allo stesso tavolo.
 
Output: Se c'è un modo per far sedere OVP, allora  stampa SÌ sulla prima riga e il numero di OVP che devi sedere al primo tavolo sulla seconda riga. Altrimenti, nella prima e unica riga stampa NO.

Esempi
# Input Uscita
1
3 2
1 2
1 3

1