Թաքցված խնդիր
|Այս խնդիրը թաքցված է խմբագրական խրհրդի անդամի կողմից քանի որ կամ այն ոչ ճիշտ լեզվով է գրված,|կամ թեստային տվյալներն են սխալ, կամ խնդրի ձևակերպումը պարզ չէ։|

ACM_0169 - FENWICK TREE

   Fenwick tree is a data structure effectively supporting prefix sum queries.

   For a number t denote as h(t) maximal k such that t is divisible by 2k. For example, h(24) = 3h(5) = 0. Let l(t) = 2h(t), for example, l(24) = 8l(5) = 1.

   Consider array a[1], a[2], …, a[n] of integer numbers. Fenwick tree for this array is the array b[1], b[2], …, b[n] such that

b[i] = ∑ij = i − l(i) + 1 a[j].

So

b[1] = a[1],

b[2] = a[1] + a[2],

b[3] = a[3],

b[4] = a[1] + a[2] + a[3] + a[4],

b[5] = a[5],

b[6] = a[5] + a[6],

...

   For example, the Fenwick tree for the array

a = (3, −141, −59)

is the array

b = (3247, −54).

   Let us call an array self-fenwick if it coincides with its Fenwick tree. For example, the array above is not self-fenwick, but the array a = (0, −11109) is self-fenwick.

   You are given an array a. You are allowed to change values of some elements without changing their order to get a new array a' which must be self-fenwick. Find the way to do it by changing as few elements as possible.

Input

   The first line of the input file contains n (1  n  100000.) — the number of elements in the array. The second line contains n integer numbers — the elements of the array. The elements of the input array do not exceed 109 by their absolute values.

Output

   Output n numbers — the elements of the array a'. If there are several solutions, output any one.

Examples

stdin

stdout

1

6
3 -1 4 1 -5 9
0 -1 1 1 0 9

Ավելացրեց.Հրանտ Հովհաննիսյան
Ամսաթիվ.2014-04-09
Ժամանակի սահմանափակումը.1s
Ծրագրի տեքստի սահմանափակումը.50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Լեզուներ.Բոլորը բացի ASM32 ASM64 GAWK CLPS CLOJURE D ERL FSHARP FORTRAN GOSU HASK ICON ICK NEM NIM OBJC-CLANG PICO PIKE PYPY PYPY3 PY_NBC RUST SCM guile CHICKEN SED TCL WHITESPACE
Աղբյուրը.Northern QF 2008.F

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.