Bit de paritat. X46715


Statement
 

pdf   zip

Pel canal d’entrada rebreu un enter N>0N > 0 i tot seguit una seqüència de zeros i uns de mida 3N3 N. És a dir, la seqüència consistirà en triplets (grups de tres) de bits. Per exemple, si pel canal d’entrada tenim

4 0 0 0 1 1 0 1 0 1 0 1 1

veurem que el primer 44 indica que després vindran 44 grups de 33 bits:

0 0 0 1 1 0 1 0 1 0 1 1

El tercer bit de cada triplet és el bit de paritat, i és correcte si compleix la següent condició:

  • Si els dos bits anteriors són iguals, llavors el bit de paritat ha de ser 00.

  • Si els dos bits anteriors són diferents, llavors el bit de paritat ha de ser 11.

Feu un programa que escrigui SI al canal de sortida (NO altrament) si per a la seqüència d’entrada, tots els bits de paritat són correctes.

Tingueu en compte que per a tota seqüència de mida 3N3N hi haurà NN bits de paritat.

Per resoldre aquest exercici NO podeu usar la classe vector.

Entrada

Un enter N>0N > 0 i una seqüència de zeros i uns de mida 3N3N.

Sortida

SI (NO altrament) si tots els bits de paritat són correctes.

Public test cases
  • Input

    3
    0 0 0
    1 1 0
    0 1 1
    

    Output

    SI
    
  • Input

    3
    0 0 0
    1 1 1
    1 1 0
    

    Output

    NO
    
  • Information
    Author
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++