Se consideră un șir de numere naturale f[1]
, f[2]
, …, f[n]
. Fiecărui element al șirului i se calculează numărul biților de 1
din reprezentarea în baza 2
. De exemplu, numărul 15
are 4
biți de 1
în baza 2
.
Cerința
Să se determine numărul total de biți de 1
al tuturor numerelor din șir.
Date de intrare
Fișierul de intrare countbits.in
conține pe prima linie numerele n
, A
, B
, C
, D
, E
, unde n
este numărul elementelor șirului. Șirul se va genera astfel: f[1] = A
, f[2] = B
, apoi pentru orice i = 3..n
, f[i] = 1 + (f[i-2] * C + f[i-1] * D) % E
.
Date de ieșire
Fișierul de ieșire countbits.out
va conține pe prima linie un singur număr, reprezentând numărul total de biți de 1
al tuturor numerelor din șir.
Restricții și precizări
3 ≤ n ≤ 15 000 000
3 ≤ A, B, C, D ≤ 100 000 000
3 ≤ E ≤ 1 000 000 000
- Atenție la generarea elementelor șirului
Exemplu:
countbits.in
4 7 11 15 19 8999
countbits.out
17