题解
2024-04-05 22:53:25
发布于:陕西
3阅读
0回复
0点赞
#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)//忽略i等于1时的计算
{
ans=ans+min(t1,l-s)*p1;//ans加上t1或是l-s乘以两个区间的距离
if(l-s>t1)//如果l-s没有达到t1,证明t2是存在的
{
ans=ans+min(l-s-t1,t2)*p2;//将剩下的空间与p2对比,取出p2功耗的区间
if(l-s>t1+t2)//再一次做对比,判断是否存在t3
{
ans=ans+(l-s-t1-t2)*p3;//t3的值其实就是区间减去t1和t2后剩余的时间。再将这一段时间与p3功耗相乘就,能得出该区间的功耗
}
}
}
ans=ans+(r-l)*p1;
s=r;
}
cout<<ans;//输出ans
return 0;//结束
}
这里空空如也
有帮助,赞一个