Arbre en grups de tres P81908


Statement
 

pdf   zip

Donat un arbre, en podeu esborrar algunes arestes de manera que els components connexos resultants tinguin tots tres vèrtexs? Aquí, un arbre és un graf no dirigit, connex i sense cicles.

Entrada

L’entrada consisteix en diversos casos, cadascun amb el nombre de vèrtexs nn, seguit de les n1n - 1 arestes xx yy, amb xyx \ne y. Suposeu 6n<1056 \le n < 10^5, que els vèrtexs es numeren a partir de 0, que les arestes donades realment formen un arbre, i que nn és múltiple de 3.

Sortida

Per a cada cas, si no hi ha solució, escriviu una línia amb “NO”. Altrament, escriviu una línia amb “SI”, seguida de totes les arestes esborrades, una per línia. Els dos vèrtexs de les arestes han d’estar ordenats, i les arestes han de sortir ordenades lexicogràficament.

Public test cases
  • Input

    6  4 2  5 1  1 4  3 4  1 0
    6  4 2  5 1  1 4  3 4  4 0
    9  8 0  0 7  7 1  1 6  6 2  2 5  5 3  3 4
    9  6 1  1 4  4 2  2 3  3 5  3 7  2 8  8 0
    

    Output

    SI
    1 4
    NO
    SI
    1 7
    2 5
    SI
    2 3
    2 4
    
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++