Problem 1028 --数据结构-栈-横截面区域面积

1028: 数据结构-栈-横截面区域面积

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 14  Solved: 5
[Submit][Status][Web Board][Creator:]

Description

你的任务是模拟洪水破坏。对于给定的横截面图,报告溢流区域的区域。


假设该地区的降雨量不断下降,并且从该地区溢出的水正在落在两侧的海中。 例如,对于上面的横截面图,下雨将会造成洪水,洪水的面积分别为4,2,1,19和9。



Input

用' / ',' \ '和' _ '分别表示斜坡和平地的字符串在一行中给出。 例如,以上示例的区域由字符串“ \\ /// \ _ / \ / \\\\ / _ / \\ /// __ \\\ _ \\ / _ \ / _ / \ “。


1≤ 字符串长度 ≤20,000

Output

用以下格式报告洪水的地区:

A
k L1 L2... Lk

在第一行中,打印创建洪水的总面积A

在第二行中,打印洪水的数量k以及面积Li(i=1,2,3....k)

Sample Input

\\//

Sample Output

4
1 4

HINT

该题比较有难度。对输入的字符进行逐个检查。如果是'\'则将该字符位置的整数i压入栈,如果是'/'则从栈顶取出与之对应的'\'的位置,计算出二者的距离,并累加到总面积中。字符'_'的作用只是将一对'\'和'/'的距离加1,不必考虑。

Source

[Submit][Status]