#P10168. [DTCPC 2024] 0=1=0

[DTCPC 2024] 0=1=0

题目描述

给你一个只含 0011 的字符串 ss

每次你可以选择 i[1,n)i\in [1,n),并将 sis_isi+1s_{i+1} 分别取反。

定义 11 取反结果为 0000 取反结果为 11

要求使得顺序对数量最大,即使得 i<ji\lt jsi<sjs_i\lt s_j(i,j)(i,j) 个数最大。

输出方案。

输入格式

一行一个字符串 SSS2×105\lvert S\rvert\leq 2\times 10^5)。

输出格式

第一行输出一个数字,表示最大的顺序对个数。

第二行输出一个数字 xx,表示操作步数。

接下来输出一行 xx 个数字,第 ii 个数字 aia_i 表示第 ii 步操作的是 sais_{a_i}sai+1s_{a_i+1}

你要保证操作步数不超过 2×1052\times 10^5 步,但不必最小化操作步数。

111100
8
2
1 5