[zp06b] Suma kontrolna ósemkowa
Języki:
c
Limit czasu: 1.0 s
Limit pamięci: 5 MB
Cel
Zadanie na operacje bitowe, wejście i wyjście formatowane oraz formaty wejścia i wyjścia.
Problem
Naukowiec pisał program, który gromadził dużą ilość danych. Ponieważ zachodziła obawa, że może dochodzić do przekłamywania pojedynczych bitów, więc stwierdził, że do każdej porcji danych będzie dołączał prostą sumę kontrolną.
Zadanie
Napisz program, który będzie wyliczał sumę kontrolną dla danych w następujący sposób:
Dane podzielone są na 32-bitowe słówa. Suma kontrolna jest 32-bitowym słowem w którym i-ty bit jest jedynką wtedy i tylko wtedy, jeśli w nieparzystej ilości słów danych i-ty bit jest jedynką. (Innymi słowy suma kontrolna jest otrzymywana w wyniku wykonania operacji różnicy symetrycznej (XOR) na bitach słów danych.)
Danymi jest ciąg 32-bitowych słów zapisanych w postaci ósemkowej.
Wyjście jest 32-bitowym słowem zapisanym w postaci ósemkowej dopełnionej zerami do 11 cyfr.
Przykład
Wejście
Zadanie na operacje bitowe, wejście i wyjście formatowane oraz formaty wejścia i wyjścia.
Problem
Naukowiec pisał program, który gromadził dużą ilość danych. Ponieważ zachodziła obawa, że może dochodzić do przekłamywania pojedynczych bitów, więc stwierdził, że do każdej porcji danych będzie dołączał prostą sumę kontrolną.
Zadanie
Napisz program, który będzie wyliczał sumę kontrolną dla danych w następujący sposób:
Dane podzielone są na 32-bitowe słówa. Suma kontrolna jest 32-bitowym słowem w którym i-ty bit jest jedynką wtedy i tylko wtedy, jeśli w nieparzystej ilości słów danych i-ty bit jest jedynką. (Innymi słowy suma kontrolna jest otrzymywana w wyniku wykonania operacji różnicy symetrycznej (XOR) na bitach słów danych.)
Danymi jest ciąg 32-bitowych słów zapisanych w postaci ósemkowej.
Wyjście jest 32-bitowym słowem zapisanym w postaci ósemkowej dopełnionej zerami do 11 cyfr.
Przykład
Wejście
15342642547 6236621706 14417114151 14614644163 16454156121 03122256377 05272112112 14225254354 04343417451 10672076315Wyjście
03367314527