시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB19181493.333%

문제

Bitlandijos prekybos tinklas „Baxima“ nori modernizuoti savo parduotuves ir įrengti išmanius kasos aparatus. Vienas iš išmaniosios kasos komponentų yra robotas, gebantis automatiškai grąžinti grąžą bitais (Bitlandijos valiuta).

Bitų banknotai turi šiuos nominalus: $1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024$.

Dienos pradžioje kasa yra tuščia. Toliau yra registruojamos visos transakcijos: į kasą įdedamų banknotų nominalai. Trūksta tik programinės įrangos, kuri suskaičiuotų, kaip geriausia parinkti grąžą kiekvienam klientui.

Parašykite progamą, kuri rastų, kokiais nominalais robotas turi duoti grąžą, kad kiekvienam klientui būtų atiduodama kuo mažiau banknotų.

입력

Pirmoje eilutėje įrašytas transakcijų skaičius $T$. Sekančiose $T$ eilučių įrašyta po vieną skaičių $t_i$:

  • Jei $t_i > 0$, tai jis bus lygus vienam iš galimų Bito valiutos nominalų, ir reiškia, kad į kasą įdedamas šio nominalo banknotas.
  • Jei $t_i < 0$, tai reiškia, jog klientui reikalinga grąža, ir iš kasos reikia išimti atitinkamus banknotus.

출력

Kiekvienai grąžos transakcijai ($t_i < 0$), jūs turite išvesti po eilutę, kurioje būtų įrašyti grąžai panaudoti banknotai, nuo didžiausio iki mažiausio. Nepamirškite, jog robotas turi grąžinti pinigus taip, kad banknotų skaičius būtų kuo mažesnis.

Laikykite, kad kasoje visuomet bus pakankamai banknotų, kad pavyktų duoti grąžą klientui.

제한

  • $1 ≤ T ≤ 1\,000$
  • $-10^6 ≤ t_i < 0$ arba $t_i ∈ \{1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024\}$.

예제 입력 1

10
8
8
16
4
4
-20
4
-16
1
-5

예제 출력 1

16 4
8 8
4 1

Pirma į kasą įdedami banknotai $8, 8, 16, 4, 4$. Pirmajam klientui duoti $20$ bitų grąžą geriausia $16+4$ (o ne, pavyzdžiui, $8+8+4$).

Tuomet į kasą dar įdedamas $4$ bitų banknotas. Tai reiškia, kad iš viso kasoje yra likę $8, 8, 4, 4$. Antrajam klientui duoti $16$ bitų grąžą geriausia $8+8$.

Galiausiai į kasą įdedamas dar $1$ bito banknotas. Kasoje yra likę banknotai $4, 4, 1$. Paskutiniajam klientui duoti 5 bitų grąžą tegalima $4+1$.