/*
计算的重点 在两段时间的间隔 l1r1 l2r2  
应该是 r1~l2 这之间的功耗  
n 共有几对 l r  
p1 p2 p3 3种功耗 
t1 t2 两个等待时间 
ans = 0 , s 来表示上一次工作的结束时间 
for(n 1~n){
	cin >> l r 
	if(i>1){ //不是第一轮  
	//计算 s~l的功耗  
		ans += min(t1,l-s) * p1; //屏幕亮着时候的功耗 
		if(l-s > t1){ //存在屏保状态  
			ans += min(l-s-t1,t2) * p2;
			if(l-s >t1+t2){
				ans+= (l-s-t1-t2)*p3;
			}
		}
	}
	ans += (r-l)*p1;//绝对有 
	s = r; 
}
 
*/
//电量 
#include <bits/stdc++.h>
using namespace std;

int main(){
	int n,p1,p2,p3,t1,t2;
	int l,r,s,ans=0;
	cin>>n>>p1>>p2>>p3>>t1>>t2;
	for(int i=1;i<=n;i++){
		cin>>l>>r;
		if(i>1){ //不是第一轮  
			ans += min(t1,l-s) * p1; //屏幕亮着时候的功耗 
			if(l-s > t1){ //存在屏保状态  
				ans += min(l-s-t1,t2) * p2;
				if(l-s >t1+t2){
					ans+= (l-s-t1-t2)*p3;
				}
			}
		}
		ans += (r-l)*p1;//绝对有 
		s = r; 
	} 
	cout <<ans;
	return 0;
} 
/*
自己根据思路 为什么代码没写对  


*/

0 条评论

目前还没有评论...

信息

ID
7
时间
1000ms
内存
256MiB
难度
7
标签
递交数
102
已通过
27
上传者