#include <iostream>
#include <bits/stdc++.h>
#include <string> using namespace std; int r,y,g; void change(long long int sum,int &k,int &t)//最开始显示为t秒,sum秒后为什么状态,此时为k灯
{
sum%=(r+y+g);///不加此句会超时
if(k==0)
return;
if(sum-t<0)
{
t-=sum;
return;
}
else
{
sum-=t;
if(k==1)
k=3;
else if(k==3)
k=2;
else if(k==2)
k=1;
}
while(sum>=0)//1--》3--》2
{
switch (k)
{
case 1:
if(sum-r<0)
{
t=r-sum;
return;
}
else
{
if(k==1)
k=3;
else if(k==3)
k=2;
else if(k==2)
k=1;
sum-=r;
}
break;
case 2:
if(sum-y<0)
{
t=y-sum;
return;
}
else
{
if(k==1)
k=3;
else if(k==3)
k=2;
else if(k==2)
k=1;
sum-=y;
}
break;
case 3:
if(sum-g<0)
{
t=g-sum;
return;
}
else
{
if(k==1)
k=3;
else if(k==3)
k=2;
else if(k==2)
k=1;
sum-=g;
}
break;
}
}
} int main()
{
cin>>r>>y>>g;
int n;
cin>>n;
long long int sum=0;
while(n--)
{
int k,t;
cin>>k>>t;
change(sum,k,t);
switch (k)
{
case 0:
sum+=t;
break;
case 1:
sum+=t;
break;
case 2:
sum+=(t+r);
break;
case 3:
break;
}
}
cout<<sum<<endl;
}

最新文章

  1. [python]设计模式
  2. Bounce.js – 快速创建漂亮的 CSS3 动画效果
  3. MySql之触发器【过度变量 new old】
  4. html5学习测试
  5. XML序列化成对象
  6. 四舍五入PK银行四舍五入
  7. 关于简明Vim练级攻略
  8. easyui datagrid plunges 扩展 插件
  9. xssgame挑战wp
  10. 如何通过TortoiseGit(小乌龟)把本地项目上传到github上
  11. Uni-app中Class绑定与Style绑定
  12. windows本地用户及组的区别
  13. mysql性能排查思路
  14. web scraper——安装【一】
  15. CF1099F Cookies
  16. Bootstrap3基础 btn-xs/sm... 按钮的四种大小
  17. 日常英语---四、vis.js是什么
  18. office excel Query 功能
  19. 【LeetCode题解】141_环形链表
  20. 更改CentOS7登录画面的分辨率

热门文章

  1. immutable.js学习笔记(五)----- Set
  2. 使用 flexible.js + rem 制作苏宁移动端首页
  3. WPF中使用LibVLCSharp.WPF 播放rtsp
  4. P29_全局配置 - window - 导航栏
  5. Destroying Roads
  6. CF1418D Trash Problem
  7. SpringBoot 面试问答总结(VIP典藏版),最详细!全面!爆肝!
  8. 报错com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect datetime value: &#39;1&#39; for column &#39;date&#39; at row 1问题解决
  9. 05-python的输入与输出
  10. codeforce F. Multicolored Markers