#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;
}

CCF 201812-2 小明放学的更多相关文章

  1. CCF201812-2小明放学

    题目背景 汉东省政法大学附属中学所在的光明区最近实施了名为"智慧光明"的智慧城市项目.具体到交通领域,通过"智慧光明"终端,可以看到光明区所有红绿灯此时此刻的状 ...

  2. CCF CSP 201812-1 小明上学

    题目链接:http://118.190.20.162/view.page?gpid=T80 问题描述 试题编号: 201812-1 试题名称: 小明上学 时间限制: 1.0s 内存限制: 512.0M ...

  3. 201812-2 小明放学 Java

    思路: 红绿灯每种灯亮划分区间,在[0,r]区间内红灯亮,在(r,g+r]区间内绿灯亮,在(r+g,r+g+y]区间内黄灯亮,在划分好区间后只需要判断当小明到达红绿灯时是哪个灯在亮,就可以判断出通过红 ...

  4. CSP 201812-2 小明放学

    问题描述: 解题思路: 由于数据的量较大,需要使用long long来存储结果,否则会爆掉结果只能得到一部分的分 可以类比时钟,将红绿灯的变换当成时钟的运转,这样用模运算来断定红绿灯在到达时处于什么颜 ...

  5. CCF2018 12 2题,小明终于到家了

    最近在愁着备考,拿CCF刷题,就遇到这个难题,最后搜索了一下大佬们的方法,终于解决, 问题描述 一次放学的时候,小明已经规划好了自己回家的路线,并且能够预测经过各个路段的时间.同时,小明通过学校里安装 ...

  6. 小明种苹果(续)第十七次CCF认证

    小明种苹果(续)第十七次CCF认证 题目 原题链接 ](http://118.190.20.162/view.page?gpid=T93) 很高心,在现在CCF CSP可以下载自己当时的答卷了,也就是 ...

  7. 201812-1 小明上学 Java

    思路: 上学这个题和放学有区别,上学是小明每到一个路口的情况,是实时更新的.不是只有出发时间,那样就比较复杂了. 这个题需要注意:黄灯之后要等红灯,想一下交通规则. import java.util. ...

  8. 小明的密码-初级DP解法

    #include #include #include using namespace std; int visited[5][20][9009];// 访问情况 int dp[5][20][9009] ...

  9. 小明系列问题――小明序列(LIS)

    小明系列问题――小明序列 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit ...

  10. ACM 擅长排列的小明

    擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想 ...

随机推荐

  1. springboot跨域解决

    package com.xf.config; import java.io.IOException; import javax.servlet.Filter; import javax.servlet ...

  2. P27_wxss - 全局样式和局部样式

    全局样式 定义在 app.wxss 中的样式为全局样式,作用于每一个页面. 局部样式 在页面的 .wxss 文件中定义的样式为局部样式,只作用于当前页面. 注意: 当局部样式和全局样式冲突时,根据就近 ...

  3. Spring Boot 防止接口被恶意刷新、暴力请求

    ​在实际项目使用中,必须要考虑服务的安全性,当服务部署到互联网以后,就要考虑服务被恶意请求和暴力攻击的情况,下面的教程,通过Spring Boot提供的HandlerInterceptor和Redis ...

  4. 什么是MES(Manufacturing Execution System)

    "本文仅代表个人观点" 本文档将提供一个高层次的概述,以帮助阐明什么是MES,并触及通常被归为MES的周边领域. 整体情况 制造执行系统或MES软件是旨在帮助公司管理其制造过程的工 ...

  5. TreeMap排序Comparator()重写

    package map_;import java.util.Comparator;import java.util.TreeMap;/* * @author YAM */public class Tr ...

  6. 【模板】AC自动机(二次加强版)

    模板 \(Problem:\) 求 \(n\) 个模式串在文本串中出现的次数 \(templete:\) \(Luogu5357\) \(Code\) #include<cstdio> # ...

  7. CPU AMX 详解

    CPU AMX 详解 CPU AMX 详解 概述 算力如何 问题定义 AVX如何解决矩阵乘问题 AMX如何解决矩阵乘问题 如何实现的 计算部分 数据部分 路才开始 概述 2016 年开始,随着 NV ...

  8. Python arcpy创建栅格、批量拼接栅格

      本文介绍基于Python语言arcpy模块,实现栅格影像图层建立与多幅遥感影像数据批量拼接(Mosaic)的操作.   首先,相关操作所需具体代码如下: import os import arcp ...

  9. JAVA排序的方法

    //冒泡排序法: package fuxi;public class Bubble {    public static void main(String[] args) {        int a ...

  10. JavaScript验证API

    验证API 两个方法: checkValidity():如果input元素中的数据是合法的返回true,否则返回false: setCustomValidity():设置input元素的validat ...