bzoj#P1809. [IoI2005]mou

[IoI2005]mou

题目描述

游乐园已经开始运行一个崭新的模拟过山车。模拟的轨道由 NN 段铁轨组成,并且首尾相连。第一段铁轨从高度 00 开始。操作员 Byteman 能通过调整连续几段的铁轨高度来改造这条轨道。在被改造的一段前面的铁轨高度不受影响。 每一次铁轨被调整。后面的轨必须升起或降低来保持连通,并保证起点高度为 00 。下面举例说明轨道改造过程。

每次开始时车都有足够能量到达高度 hh 。也就是说,只要轨道的高度不超过 hh ,车就一直开下去, 甚至直到结束。

给出每天的运行和改造情况, 为每次运行计算在车停止前,到达的铁轨数。铁轨以一个 NN 个数的数列形式表示 ,一个数对应一段铁轨。第 iidid_i 表示在第 ii 段铁轨上的高度变化。也就是说,在到达铁轨 ii 前,如果车的高度是 hh,那么经过铁轨 ii 后,高度变为 h+dih+d_i。最初轨道是一条水平线。就是说对于所有的iidi=0d_i=0。运行和改造交错进行。 每个改造用三个数表示: aabbDD 。表示从aabb(包括a,ba,b)的所有did_iDD。每次运行给定一个数字hh ——车能到达的最大高度。

输入格式

输入的第一行包括一个正整数 NN ——铁轨的数目。下面的行包括改造和运行,各有一个标识符:

*改造——一个字母 II,和整数 a,b,Da,b,D 中间用一个空格隔开。

*运行——一个字母 QQ,和一个整数 hh ,用一个空格隔开。

*一个字母 EE ——结束符号,表示输入结束。

你可以假设任意时刻任意铁轨的高度在[1,1000000000][1,1000000000]区间内。

输出格式

第i行需包含一个整数,

即第i次运行经过的铁轨数。

4
Q 1
I 1 4 2
Q 3
Q 1
I 2 2 -1
Q 3
E

4
1
0
3

数据规模与约定

对于50%的数据:

1N200001\leq N\leq 20000 且输入不超过1000行。

对于100%的数据

1N1091\leq N\leq 10^9

1abN,109D1091\leq a\leq b\leq N,-10^9\leq D\leq 10^9

0h1090\leq h\leq 10^9

输入不超过 1000010000 行。

提示

没有写明提示

题目来源

没有写明来源