Arbre 2-acolorit

Feu la funció

bool arbre2Acolorit(BinaryTree<int>);

tal que, donat un arbre binari AA que només conté zeros i uns, torni true si i només si l’arbre està 2-acolorit.

Assumim que el número zero i el número u indiquen dos colors diferents. Diem que un arbre està 2-acolorit si tot node de l’arbre té un color diferent al dels seus fills (si en tingués).

Per exemple, els arbres A1 i A2 estan 2-acolorits, mentre que A3 no ho està perquè hi ha un node (marcat amb una fletxa) que té el mateix color que el seu fill.


         A1            A2          A3

         1             0           0
        / \           / \         / \
       0   0         1   1       1   1  <--
      / \ / \           /       /   / \
     1  1 1  1         0       0   1   0
                    

La funció que heu de fer ha de ser al fitxer arbre2Acolorit.cpp.

La puntuació que podeu obtenir és la següent:

  1. Solució correcta en els jocs de proves públics: 5 punts.

  2. Solució correcta en els jocs de proves públics, especificació de la funció, H.I. i funció fita: 7 punts.

  3. Solució correcta en els jocs de proves públics i privats: 8 punts.

  4. Solució correcta en els jocs de proves públics i privats, especificació de la funció, H.I. i funció fita: 10 punts.

Només acceptarem una solució recursiva per a aquest problema.

Quan diem especificació de la funció, H.I. i funció fita volem dir que hi ha de ser tot. Dit altrament: no es donarà una fracció dels 2 punts si doneu només, per exemple, l’especificació de la funció, o només la H.I. i la fita. Se us donarà la bonificació dels 2 punts únicament si feu totes 3 coses correctament.

Entrada

La funció rep un arbre binari d’enters de zeros i uns.

Sortida

Torna un booleà bb que és true (false altrament) si i només si l’arbre està 2-acolorit.

Observació

Heu d’enviar la solució comprimida en un fitxer .tar:

tar cvf program.tar arbre2Acolorit.cpp

Observeu que per compilar us donem el Makefile,

la capçalera del mòdul funcional arbre2Acolorit.hpp, la implementació de l’arbre binari BinaryTree.hpp, i el programa principal program.cpp.

Informació del problema

Autoria: PRO1-Vilanova

Generació: 2026-01-25T21:17:48.278Z

© Jutge.org, 2006–2026.
https://jutge.org