Error de paritat. X67438


Statement
 

pdf   zip

html

Pel canal d’entrada rebreu un enter N > 0 i tot seguit una seqüència de zeros i uns de mida 3 N. És a dir, la seqüència consistirà en triples (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 4 indica que després vindran 4 grups de 3 bits:

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

El tercer bit de cada tripla é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 0.
  • Si els dos bits anteriors són diferents, llavors el bit de paritat ha de ser 1.

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 3N hi haurà N bits de paritat.

Entrada

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

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
    Jaume Baixeries
    Language
    Catalan
    Official solutions
    Python
    User solutions
    Python