#P12909. [NERC 2020] Japanese Game

    ID: 12726 远端评测题 3000ms 512MiB 尝试: 0 已通过: 0 难度: 8 上传者: 标签>贪心2020Special JudgeICPCNERC/NEERC

[NERC 2020] Japanese Game

Description

Joseph 非常喜欢日本文化。去年他学习了日本传统服饰和视觉艺术,现在他正试图揭开名为 Nonogram 的日本游戏的秘密。

在该游戏的一维版本中,有一排 nn 个空单元格,其中一些需要用笔填充。游戏的解由一个称为 profile 的描述定义——这是一个由正整数构成的序列,表示连续填充单元格块的长度。例如,profile [4,3,1][4, 3, 1] 表示填充的单元格块依次为 4 个、3 个和 1 个,且这些块之间至少有一个空单元格分隔。

一个适合 n=12n = 12p=[4,3,1]p = [4, 3, 1] 的解。

一个错误的解:前四个填充的单元格应该是连续的。

一个错误的解:最后一个填充的单元格之前应该至少有一个空单元格。

Joseph 发现,对于某些数字 nn 和 profile pp,存在多种填充单元格的方式以满足该 profile。现在,他正在尝试解决一个由 nn 个单元格和 profile pp 构成的 nonogram 问题。他已经为 pp 创建了一个 mask——即填充了所有在 nonogram 的每个解中都必须填充的单元格。

n=12n = 12p=[4,3,1]p = [4, 3, 1] 的 mask:上图中所有填充的单元格在每个解中都必须填充。

休息一段时间后,他丢失了原始的 profile pp。现在他只有 nn 和 mask mm。请你帮助 Joseph 找到任意一个与 mask mm 匹配的 profile pp',或者说明不存在这样的 profile(即 Joseph 可能犯了错误)。

Input Format

唯一一行包含一个字符串 mm——表示原始 profile pp 的 mask。
字符串 mm 的长度为 nn1n1000001 \le n \le 100\,000)。
字符串 mm 由符号 #\texttt{\#}_\texttt{\_} 组成,分别表示填充和空的单元格。

Output Format

如果不存在与 mask mm 匹配的 profile,则输出 1-1
否则,在第一行输出一个整数 kk——表示 profile pp' 中整数的数量。
在第二行,输出 kk 个整数,即 profile pp'

__#_____ 
2
3 2
_#
-1
___ 
0

Hint

翻译由 DeepSeek V3 完成