#384. [CZOI2012 G] 吹扑克

[CZOI2012 G] 吹扑克

题目描述

圣诞节马上就要到了,小 T 正在埋头苦练圣诞晚会上的节目,这次小T给大家献上的是杂技吹扑克游戏,这个游戏首先请一位同学上台来在桌面上放置一排 2020 张扑克牌,任何一张扑克牌都可以正面朝上或者正面朝下。小 T 用他宽大的嘴巴去吹扑克牌,目标是让所有的 2020 张扑克牌都正面朝上。由于小 T 的嘴巴太宽以致于他对着某张扑克牌吹气时不光会将这张扑克牌吹翻过来,同时还会把这张扑克牌左右的两张牌也吹翻过来。当然如果小T对着第一张或最后一张扑克牌吹气的话吹翻过来的牌就只有 22 张,因为第一张扑克牌的左边没有牌,最后一张扑克牌的右边也没有牌。

给你 2020 张扑克牌的初始状态(11 表示正面朝下,00 表示正面朝上),编一个程序求出将 2020 张扑克牌都吹成正面朝上的最少吹气次数。

输入格式

输入文件仅有一行包含 2020 个用空格隔开的整数,每个数为 0011

输出格式

输出文件仅有一行包含一个整数,表示将 2020 张扑克牌都吹成正面朝上的最少吹气次数。

0 0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 0 0 0 0
3

样例解释

小T对第 44991111 三张扑克牌依次吹气,最终2020张扑克牌都正面朝上。详细过程如下所示:

0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 0 0 0 0 0 [吹过第4张扑克牌后的状态]

0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 [吹过第9张扑克牌后的状态]

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 [吹过第11张扑克牌后的状态]