問題描述 :
最近小白迷上了劍俠情緣,可惜不幸的是他千挑萬選拜入了一個叫做“萬花”的門派。事實上,這個門派的主要作用就是在別人受到傷害的時候,施展技能使得好友的生命值得以恢復。
可是萬花的技能有一個缺陷,那就是玩家所謂的讀條。
讀條就是一個技能的施法時間,也就是說當我按下一個技能的操作之後,這個技能會在S秒之後才會被釋放出來。
萬花擁有數個加血技能,它們的施法時間和加血量也不盡相同。現在小白和大家一起去下副本,責任當然是負責照顧好MT(Main Tank)。根據小白多年來的經驗,可以推算出BOSS每一次攻擊對MT造成的傷害,小白希望你幫忙算一下MT是否能夠存活下來,如果可以,那麼怎麼加血,才能使得MT的最低血量最高?(MT的血量一旦太低,會導致大家的驚恐,所以小白希望知道怎麼加血才能讓MT曾經被打擊造成的血量最低值盡可能高一些)。
輸入:
第一行輸入三個數字 n和m,HP,n 代表BOSS的攻擊次數,m代表萬花的加血技能有多少個,HP代表MT初始狀態下有多少血(此時HP為MT的上限)。
接下去n個數字,第i個數字代表BOSS在第i秒對MT造成多少傷害。
接下去m行數字,每行輸入一個time和一個add;
Time代表技能如果在k時間開始讀條,那麼會在k + time時間完成效果
Add代表該技能可以恢復多少HP,但不允許超過MT的上限。
由於我們會偷襲BOSS,所以可以看做從0時間開始加血,而BOSS的傷害從1時間點才開始計算,但是BOSS得傷害會在加血技能之前被計算。
0 <= n ,m<= 10000 ,0 <= HP, time , add <=1000 ,
輸出:
第一行輸入三個數字 n和m,HP,n 代表BOSS的攻擊次數,m代表萬花的加血技能有多少個,HP代表MT初始狀態下有多少血(此時HP為MT的上限)。
接下去n個數字,第i個數字代表BOSS在第i秒對MT造成多少傷害。
接下去m行數字,每行輸入一個time和一個add;
Time代表技能如果在k時間開始讀條,那麼會在k + time時間完成效果
Add代表該技能可以恢復多少HP,但不允許超過MT的上限。
由於我們會偷襲BOSS,所以可以看做從0時間開始加血,而BOSS的傷害從1時間點才開始計算,但是BOSS得傷害會在加血技能之前被計算。
0 <= n ,m<= 10000 ,0 <= HP, time , add <=1000 ,
樣例輸入:
10 2 100
1 1 1 1 1 1 1 1 1 1
2 10
1 1
樣例輸出:
99
http://blog.csdn.net/techmonster/article/details/51383381