自学内容网 自学内容网

【CSP CCF记录】201812-1第15次认证 小明上学

题目

样例1输入

30 3 30
8
0 10
1 5
0 11
2 2
0 6
0 3
3 10
0 3

样例1输出

70

代码

 没什么技术含量的一道水题,解题关键是对于k=0,1,2,3四种情况的讨论,通过以下代码注释可以清晰理解。

类似题目还需要注意数据范围,在本题中int型够用。

#include<bits/stdc++.h>
using namespace std;
int r,y,g,n;
int main()
{
cin>>r>>y>>g;
cin>>n;
int ptime=0;//总用时 
for(int i=0;i<n;i++)
{
int k,t;
cin>>k>>t;
if(k==0)//直通 
{
ptime+=t;
//cout<<"ptime:"<<ptime<<endl;
 } 
 else if(k==1)//通过红灯 
 {
 ptime+=t;
 //cout<<"ptime:"<<ptime<<endl;
 }
 else if(k==2)//通过黄灯 
 {
 ptime+=(t+r);//等完黄灯后还要再等红灯 
 //cout<<"ptime:"<<ptime<<endl;
 }
 else//通过绿灯 
 {
 ptime+=0;
 //cout<<"ptime:"<<ptime<<endl;
 }
}
cout<<ptime;
return 0;
}

运行

样例:

测试结果


原文地址:https://blog.csdn.net/m0_73733846/article/details/144002957

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!