zoukankan      html  css  js  c++  java
  • CodeForces 665A Buses Between Cities

    A. Buses Between Cities
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    Buses run between the cities A and B, the first one is at 05:00 AM and the last one departs not later than at 11:59 PM. A bus from the city A departs every a minutes and arrives to the city B in a ta minutes, and a bus from the city B departs every b minutes and arrives to the city A in a tb minutes.

    The driver Simion wants to make his job diverse, so he counts the buses going towards him. Simion doesn't count the buses he meet at the start and finish.

    You know the time when Simion departed from the city A to the city B. Calculate the number of buses Simion will meet to be sure in his counting.

    Input

    The first line contains two integers a, ta (1 ≤ a, ta ≤ 120) — the frequency of the buses from the city A to the city B and the travel time. Both values are given in minutes.

    The second line contains two integers b, tb (1 ≤ b, tb ≤ 120) — the frequency of the buses from the city B to the city A and the travel time. Both values are given in minutes.

    The last line contains the departure time of Simion from the city A in the format hh:mm. It is guaranteed that there are a bus from the city A at that time. Note that the hours and the minutes are given with exactly two digits.

    Output

    Print the only integer z — the number of buses Simion will meet on the way. Note that you should not count the encounters in cities Aand B.

    Examples
    input
    10 30
    10 35
    05:20
    
    output
    5
    
    input
    60 120
    24 100
    13:00
    
    output

    9


    #include <iostream>
    #include <string.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <algorithm>
    #include <math.h>
    
    using namespace std;
    struct Node{
       int l,r; 
    }a1[10005];
    int a,ta;
    int b,tb;
    int hh,mm;
    int time(int hh,int mm){
    	return hh*60+mm;
    }
    int main(){
    	scanf("%d%d",&a,&ta);
    	scanf("%d%d",&b,&tb);
    	scanf("%d:%d",&hh,&mm);
    	int start=time(5,0);
    	int end=time(23,59);
    	int cnt=0;
    	while(start<=end)
    	{
           a1[cnt].l=start;
    	   a1[cnt].r=a1[cnt++].l+tb;
    	   start+=b;
    	}
    	Node b1;b1.l=time(hh,mm);b1.r=b1.l+ta;
    	int ans=0;
    	for(int i=0;i<cnt;i++)
    	{
    		if(b1.r>a1[i].l&&b1.l<a1[i].r)
    			ans++;
    	}
    	printf("%d
    ",ans);
    	return 0;
    
    }
    


  • 相关阅读:
    django-makdown编辑器之编辑和显示
    Jenkins以root用户运行的方法
    利用Django提供的ModelForm增删改数据的方法
    Django之URL反向解析
    腾讯云-tke-设置configmap
    线程同步
    测试人的福利来了!柠檬班题库免费对外开放啦。
    如何设计一个高并发系统?
    为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么优点和缺点?
    记一次idea问题—performing vcs refresh...
  • 原文地址:https://www.cnblogs.com/dacc123/p/8228681.html
Copyright © 2011-2022 走看看