#58. 土拨鼠的"01"测试

土拨鼠的"01"测试

Background

土拨鼠吉吉吉很疑惑, 究竟是0好还是1好?

Description

给定一个长度为 nn0101 序列 aa,你可以对其进行若干次操作。

对于一次操作,选择 1lrn1\leq l\leq r\leq n,将 al,...,ara_l,...,a_r中的 0101 翻转。

例如,将 10100101010010 翻转为 01011010101101

请你构造一个序列 bb,使得序列 aa 变为序列 bb 的最少操作次数最多。

Format

Input

输入共两行。

第一行输入一个正整数 nn

第二行输入长度为 nn0101 序列 aa

Output

输出共一行,输出长度为 nn0101 序列 bb

Samples

样例1

3
000
101

解释: 000000变为101101的最少次数为22. 对于其他的66个序列001,010,011,100,110,111001, 010, 011, 100, 110, 111, 最少的操作次数均为11.

样例2

5
01101
11000

Limitation

对于 30%30\% 的数据,有 1n51\leq n\leq 5

对于另外 20%20\% 的数据,有 1n101\leq n\leq 10

对于另外 20%20\% 的数据,有 1n201\leq n\leq 20

对于 100%100\% 的数据,有 1n1051\leq n\leq 10^5nn 为奇数。

注意:

文件重定向: reverse.in, reverse.out