luogu#P5269. 欧稳欧再次学车
欧稳欧再次学车
题目背景
请自行脑补一张欧稳欧学车的图
题目描述
欧稳欧学车时经常用一辆橡树车练习。这辆橡树车共有 个挡位,欧稳欧每秒可以把挡位增加或减少 ,初始时( 时刻)挡位为 。
这辆车的转速范围是 ,初始时转速为 。每次升挡时,转速会变成 ;降挡时,会变成 。欧稳欧在每秒也可以踩油门,让转速增加 ,再对 取 。如果转速连续 秒都 ,那么这辆车的发动机会停止工作,在这 秒结束的一瞬间停下(即使 秒中经历了降档操作,仍然算这种情况)。
这些操作我们认为都是在每秒开头的一瞬间进行的,其中换挡操作比踩油门操作先进行。而这一秒内这辆车前进的距离是 转速挡位。
现在给出欧稳欧练习时的操作序列,你需要求出他一共前进的距离是多少。
输入格式
第一行六个整数 , 表示总时间。
接下来 行,每行两个整数 ,表示这一秒的操作。
其中 表示升挡, 表示降挡, 表示挡位不变; 表示不踩油门, 表示踩油门。(不要问为什么没有刹车)
输出格式
一行一个整数,表示给定操作序列的前进距离。
如果欧稳欧在挡位为 时升挡,或在挡位为 时降挡,那么给定序列不合法,输出 。
5 3 1 10 5 100
0 1
0 0
2 1
2 1
1 1
83
3 1 1 1 1 2
2 0
2 1
2 0
2
1 2 3 4 5 6
1 0
-1
提示
对于样例一:
第一秒挡位为 ,转速为 ;
第二秒挡位为 ,转速为 ;
第三秒挡位为 ,转速为 ;
第四秒挡位为 ,转速为 ;
第五秒挡位为 ,转速为 。
对于样例二,前进两秒之后发动机就停止了工作。
对于 的数据,没有挡位操作(即保证 );
对于另外 的数据,没有踩油门操作(即保证 );
对于全部数据,保证 。