P2070 [USACO13JAN] 刷墙 Painting the Fence B

题目描述

Farmer John 已经设计了一种方法来装饰谷仓旁边的长栅栏(把栅栏认为是一根一维的线)。他把一只画刷绑在他最喜爱的奶牛 Bessie 身上,之后就去喝一杯冰水,而 Bessie 隔着栅栏来回走,当她走过某个地方,这里的一段栅栏就被刷上了涂料。 Bessie 从栅栏上的位置 $0$ 开始,并且遵循着一个 $N$ 次移动的次序($1\le N\le10^5$)。例如 `10 L` 表示 Bessie 向左移动了 $10$ 个单位长度,`15 R` 表示 Bessie 向右移动了 $15$ 个单位长度。现给出 Bessie 所有移动的列表,Farmer John 想要知道哪些区域的栅栏至少涂了两层涂料(只涂一层涂料的区域可能在大雨中被洗掉)。Bessie 在她的行走中最远到达距起始点 $10^9$ 个单位长度。

输入格式

第 $1$ 行:一个整型数 $N$。 第 $2 \sim N+1$ 行:每行描述了 Bessie 的 $N$ 次移动中的一次,例如 `15 L`。

输出格式

$1$ 行:被至少涂了两层涂料的区域总数。

说明/提示

【样例解释】 Bessie 从位置 $0$ 开始,向右移动 $2$ 个单位长度,向左移动 $6$ 个单位长度,向右移动 $1$ 个单位长度,向左移动 $8$ 个单位长度,最后向右移动 $3$ 个单位长度。 $6$ 个单位区域至少被涂了两层涂料,是 $[-11,-8],[-4,-3],[0,2]$ 这些区域。