#ZS4T3. 数组(array)

数组(array)

题目描述

本题答案不唯一,故启用Special Judge。

我们给定一个长度为 nn0101 串数组,我们可以选择其中若干个值为 00 的元素,将其修改为 11

我们令 xx 为该串中最长连续为 11 的子串 ,我们令 yy为你的修改次数。

请问要如何修改使得 xyx - y 最大,并输出修改后的数组。

输入格式

从文件 array.in 中读取数据。

一个整数 nn 代表 0101 串数组的长度。 之后 nn 个整数 aia_i 表示该数组中的每个元素, (ai0,1)(a_i \in {0,1})

输出格式

输出到文件 array.out 中。

11 行一个整数maxxymax_{x-y}代表 xyx - y 的最大值。 第 22 行输出你修改后的数组 (答案不唯一)。

测试样例

3
1 0 1
2
1 1 1
5
0 1 0 1 0
2
0 1 1 1 1

数据规模与约定

对于 100%100\% 的数据保证: 1n1051 \le n \le 10^5 , ai0,1a_i \in {0,1}