#170. 史莱姆移动

史莱姆移动

题目描述

在地图上有 nn 个格子排成一排,最左边的格子为 11,最右边的格子为 nn。在第 00 秒时,每个格子都有一只史莱姆。

每只史莱姆的跳跃方向由数组 aa 表示。ai=0a_i=0 表示史莱姆跳跃的方向是往左。如果第 ii 秒史莱姆位于格子 xx,那么在第 i+1i+1 秒它会跳到格子 x1x-1。若此时史莱姆位于格子 11,那么下一秒它将跳出地图。

ai=1a_i=1 表示史莱姆跳跃的方向是往右。如果第 ii 秒史莱姆位于格子 xx,那么在第 i+1i+1 秒它会跳到格子 x+1x+1。若此时史莱姆位于格子 nn,那么下一秒它将跳出地图。

dash 需要知道,在第 11 到第 nn 秒之间,有多少个格子没有史莱姆。

输入格式

第一行包含一个整数 n(1n3×103)n(1\le n\le 3\times 10^3),表示地图上的格子数量。

第二行包含 nn 个整数 ai(0a1)a_i(0\le a \le 1),表示每只史莱姆的跳跃方向。

输出格式

输出一行 NN 个整数,表示 11~nn 秒格子上没有史莱姆的数量

样例

3
1 0 1
1 2 3

解释#1

史莱姆1~3的跳跃方向分别为,往右,往左,往右。

第1秒,史莱姆1跳到格子2,史菜姆2跳到格子1,史菜姆3跳出地图,格子3没有史莱姆。

第2秒,史莱姆1跳到格子3,史莱姆2跳出地图,格子1 2 没有史莱姆。

第3秒,史莱姆1跳出地图,格子1,2,3 没有史莱姆。