Diferente pentru problema/aiacuxor intre reviziile #6 si #7

Nu exista diferente intre titluri.

Diferente intre continut:

Bulănel nu a fost atent la ora de informatică şi drept urmare a înţeles prost tema primită. Fiindcă nu e în stare să o facă, vă cere vouă ajutorul.
Bulănel are un şir $V$ cu $N$ elemente. Fie $f(i,j)$= suma xor a elementelor subsecvenţei determinate de poziţiile cuprinse între $[i,j]$, $i≤j$ ( $V(i) xor V(i+1) xor … xor V(j)$ ). Bulănel e curios să afle care este suma xor a valorilor returnate de funcţia **f** pentru toate subsecvenţele din şirul V cu lungimea cuprinsă între $[X, Y] (X≤Y)$. Deoarece e curios Bulănel vă pune $Q$ astfel de întrebări.
Având în vedere că Bulănel stă prost cu cititul, veţi construi voi şirul V pe baza unui şir auxiliar S de lungime M, cu elemente numerotate de la 0 la M-1. Elementul de pe fiecare poziţie $i, 0 ≤ i < N$, din vectorul $V$ va fi calculat cu următoarea formulă:
Având în vedere că Bulănel stă prost cu cititul, veţi construi voi şirul $V$ pe baza unui şir auxiliar $S$ de lungime $M$, cu elemente numerotate de la $0$ la $M-1$. Elementul de pe fiecare poziţie $i, 0 ≤ i < N$, din vectorul $V$ va fi calculat cu următoarea formulă:
== code(cpp) |
V[i] = (S[i / M] xor S[i mod M]) + i, unde x / y reprezintă câtul împărţirii lui x la y, x mod y reprezintă restul lui x la împărţirea cu y,
şi x xor y reprezintă rezultatul operaţiei xor (sau exclusiv pe biţi) dintre x şi y.

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.