#abc306d. [abc306_d]Poisonous Full-Course
[abc306_d]Poisonous Full-Course
题目描述
Takahashi决定在一家餐馆享用一顿包含道菜的大餐。 第道菜是:
- 如果,它是一道有着美味度为的解毒菜;
- 如果,它是一道有着美味度为的有毒菜。
当Takahashi吃下一道菜时,他的状态会发生以下变化:
- 初始时,Takahashi的胃是健康的。
- 当他的胃是健康的时,
- 如果他吃下一道解毒菜,他的胃保持健康;
- 如果他吃下一道有毒菜,他的胃会不舒服。
- 当他的胃是不舒服的时,
- 如果他吃下一道解毒菜,他的胃会恢复健康;
- 如果他吃下一道有毒菜,他会死亡。
进餐的过程如下。
- 按照顺序重复以下步骤。
- 首先,上菜第道菜给Takahashi。
- 然后,他选择“吃掉”或“跳过”这道菜。
- 如果他选择“吃”,他会吃掉第道菜。他的状态也会根据他所吃的菜而改变。
- 如果他选择“跳过”,他就不吃这道菜。这道菜不能以后上菜或以某种方式保存。
- 最后,(如果他的状态发生了变化,在变化之后)如果他还没有死亡,
- 如果,他继续下一道菜。
- 如果,他成功离开餐馆。
一个重要的会议正在等待着他,所以他必须成功离开餐馆。 在这种情况下,找到他吃掉的菜的美味度之和的最大可能值(如果他什么都没吃,则为)。
约束条件
- 所有输入值均为整数。
-
- 换句话说,是0或1。
输入
输入以以下格式从标准输入中给出:
输出
输出作为一个整数。
示例输入1
5
1 100
1 300
0 -200
1 500
1 300
示例输出1
600
下面的选择会使他吃掉的菜的美味度总和为,这是可能的最大值。
- 跳过第1道菜。他的胃现在是健康的。
- 吃掉第2道菜。他的胃现在不舒服了,他吃掉的菜的美味度总和为。
- 吃掉第3道菜。他的胃重新变得健康,他吃掉的菜的美味度总和为。
- 吃掉第4道菜。他的胃又不舒服了,他吃掉的菜的美味度总和为。
- 跳过第5道菜。他的胃还是不舒服。
- 最后,他没有死亡,所以他成功离开了餐馆。
示例输入2
4
0 -1
1 -2
0 -3
1 -4
示例输出2
0
对于这个输入,最佳的选择是什么都不吃,这样答案就是。
示例输入3
15
1 900000000
0 600000000
1 -300000000
0 -700000000
1 200000000
1 300000000
0 -600000000
1 -900000000
1 600000000
1 -100000000
1 -400000000
0 900000000
0 200000000
1 -500000000
1 900000000
示例输出3
4100000000
答案可能无法适应32位整数类型。