

思路:红绿黄依次循环,遇到红灯要等t秒,遇到黄灯要等t+30(红灯)秒,遇到绿灯不用等直接通过,没遇到灯则t表示路程时间。所以总时间等于等灯的时间加上路程的时间。
#include <iostream>
using namespace std;
int main()
{
int r,y,g,n,k,t;
int sum=0;
cin >> r >> y >> g >> n;
while(n--)
{
cin >> k >> t;
switch(k)
{
case 0: sum+=t; break;
case 1: sum+=t; break;
case 2: sum=sum+t+r; break;
case 3: break;
}
}
cout << sum << endl;
return 0;
}
一次过,一百分。fighting!
本文介绍了一个简单的交通信号灯模拟程序,使用C++语言实现。该程序模拟了红、黄、绿三种信号灯的切换过程,并计算通过这些信号灯所需的总时间。通过对不同颜色信号灯的等待时间进行累加,可以得出车辆通过整个信号灯系统的总时间。
241

被折叠的 条评论
为什么被折叠?



