Educational Codeforces Round 12 A. Buses Between Cities

题意:
从A到B的汽车每隔 a 分钟发车一次,从A到B要ta分钟。

从B到A汽车每隔b分钟发车一次,从B到A要ta分钟。

Simion从A出发,问他在A->B的途中共遇到了多少辆车。

汽车都是从上午5.00出发,最晚到晚上11.59。

思路:

这种CF题模拟模拟!!!讲道理模拟题的能力好弱啊!!!
直接就是从5:00到11:59模拟一发,然后中间只会有两种可能,一个是那个人还没出去之前,一个是那个人出去了以后,车子在路上。
然后就是纯模拟就可以了,但是模拟的条件,还是靠感觉写的好啊

#include<iostream>
#include<cstdio>
#include<string.h>
#include<algorithm>
using namespace std;

int main()
{

    int a,ta;
    int b,tb;
    int hh,mm;
    scanf("%d%d",&a,&ta);
    scanf("%d%d",&b,&tb);
    scanf("%d:%d",&hh,&mm);
    int be=hh*60+mm;
    int ed=hh*60+mm+ta;
    int st=5*60;
    int cnt=0;
    while(st<60*24)
    {
        if((st<ed&&(st+tb)>be)||(st<ed&&st>be))
            cnt++;
        st+=b;
    }
    cout<<cnt<<endl;
    return 0;
}
posted @ 2016-05-31 22:39  see_you_later  阅读(96)  评论(0编辑  收藏  举报