#P3185. The Water Bowls
The Water Bowls
描述 奶牛们有一排 个饮水碗。这些碗要么是正放的(能正常提供清凉的饮水),要么是倒扣的(盛不了水)。它们希望这 个饮水碗都能正放,于是就用它们宽大的鼻子去翻转碗。
然而,它们的鼻子太宽了,每次翻转一个碗时,也会同时翻转这个碗左右两边的碗(总共三个碗;如果是两端的碗,则是两个碗)。
给定碗的初始状态( 表示不能饮用,表示能饮用,看起来就像一个碗的状态 ),要把所有碗都翻转成正放(即 状态),最少需要翻转多少次碗?
输入
第 1 行:一行包含 个用空格分隔的整数
输出
第 1 行:把所有碗都翻转成正放(即变为 )所需的最少翻转次数。对于给定的输入,一定能找到某种翻转组合,使所有碗都变为 个 。
输入数据 1 0 0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 0 0 0 0
输出数据 1
3
提示 样例解释:
翻转第 4、9 和 11 个碗,就能让所有碗都能饮用:
0 0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 0 0 0 0 [初始状态]
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 个碗后]