CF49D.Game

普及+/提高

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Vasya and Petya have invented a new game. Vasya takes a stripe consisting of 1 × n square and paints the squares black and white. After that Petya can start moves — during a move he may choose any two neighboring squares of one color and repaint these two squares any way he wants, perhaps in different colors. Petya can only repaint the squares in white and black colors. Petya’s aim is to repaint the stripe so that no two neighboring squares were of one color. Help Petya, using the given initial coloring, find the minimum number of moves Petya needs to win.

瓦西娅和佩佳发明了一种新游戏。瓦西娅取一条由 1×n1 \times n 个方格组成的条带,并将每个方格涂成黑色或白色。之后佩佳可以开始进行操作——每次操作中,他可以选择任意两个相邻且颜色相同的方格,并将这两个方格重新涂成任意颜色(可以相同,也可以不同),但只能使用黑色和白色。佩佳的目标是将整条条带重新涂色,使得任意两个相邻方格的颜色均不相同。请根据给定的初始涂色方案,帮助佩佳求出他获胜所需的最少操作次数。

输入格式

The first line contains number n (1 ≤ n ≤ 1000) which represents the stripe’s length. The second line contains exactly n symbols — the line’s initial coloring. 0 corresponds to a white square, 1 corresponds to a black one.

第一行包含一个数字 nn(1≤n≤10001 \leq n \leq 1000),表示条纹的长度。
第二行恰好包含 nn 个字符——表示该条纹的初始着色。其中 0 对应白色方块,1 对应黑色方块。

输出格式

If Petya cannot win with such an initial coloring, print -1. Otherwise print the minimum number of moves Petya needs to win.

如果Petya无法通过这样的初始染色获胜,则输出 −1-1。否则,输出Petya获胜所需的最少步数。

输入输出样例

  • 输入#1

    6
    111010

    输出#1

    1
  • 输入#2

    5
    10001

    输出#2

    1
  • 输入#3

    7
    1100010

    输出#3

    2
  • 输入#4

    5
    00100

    输出#4

    2

说明/提示

In the first sample Petya can take squares 1 and 2. He repaints square 1 to black and square 2 to white.

In the second sample Petya can take squares 2 and 3. He repaints square 2 to white and square 3 to black.

在第一个样例中,Petya 可以选择方格 1 和 2。他将方格 1 重绘为黑色,将方格 2 重绘为白色。

在第二个样例中,Petya 可以选择方格 2 和 3。他将方格 2 重绘为白色,将方格 3 重绘为黑色。

输入解题思路,AI测评打分。不知道怎么写?

首页