Home => ProblemSet => 2004:坦白
Problem2189--2004:坦白

2189: 2004:坦白

Time Limit: 1 Sec  Memory Limit: 512 MB  Submit: 0  Solved: 0
[ Submit ] [ Status ] [ Creator: ][ 参考程序 ]

Description

无人的 Sekai 里,Mizuki 正在回忆她不愿面对的一切。Ena 究竟是什么表情?自己真的已经成为所有人眼里的“怪物”了吗?
她知道维持现状对她来说永远是当下最好的选择,但是哪怕是鼓起了一次勇气,现在自己还会落得这样的结局吗……
她笑了笑,回忆过去对她来说已经于事无补,自己的结局在 「那一刻」已经确定了,世界上的秘密终究不能永远是秘密。


Mizuki 可以回忆起 n 个有序的事件,每个事件都是好的或者坏的,好的事件会为她带来 +1 的收益,坏的事件会为她带来 −1 的收益。
对于每个事件,如果她选择坦白,都会取消原来的收益,改为获得 ⊕1 的收益,其中 ⊕ 为异或运算。
总收益值定义为 264 依次经过每个事件的收益计算后的值。
你想要知道,如果 Mizuki 选择恰好 m 个事件坦白,她可以获得的最大收益,你只需要输出最大收益减掉 264 的值。
因为 Mizuki 想要知道坦白是否是好的,你需要对 m=0,1,⋯,n 分别计算。


Input

本题有多组测试数据。
第一行输入一个整数 T,代表数据组数。
接下来 T 行,每行输入一个字符串 S,第 i 个字符为 + 代表第 i 个事件是好的,反之代表这个事件是坏的。

Output

对于每组数据输出一行 ∣S∣+1 个整数,分别代表坦白 0,1,⋯,m 次的最大收益减 264 的值。

Sample Input Copy

4
+
--
+--
++-+--++

Sample Output Copy

1 1 
-2 0 0 
-1 1 1 1 
2 4 6 6 6 6 4 2 0 

HINT



样例解释

对于第一组样例,以下为最优策略:
  • m=1 时坦白第 1 个事件。
对于第二组样例,以下为最优策略:
  • m=1 时坦白第 1 个事件。
  • m=2 时坦白第 1,2 个事件。
对于第三组样例,以下为最优策略:
  • m=1 时坦白第 3 个事件。
  • m=2 时坦白第 1,3 个事件。
  • m=3 时坦白第 1,2,3 个事件。



Source/Category