首页 > 其他 > 详细

luogu P3111 [USACO14DEC]牛慢跑Cow Jog_Sliver |贪心+模拟

时间:2019-11-14 12:27:47      阅读:74      评论:0      收藏:0      [点我收藏+]

有N (1 <= N <= 100,000)头奶牛在一个单人的超长跑道上慢跑,每头牛的起点位置都不同。由于是单人跑道,所有他们之间不能相互超越。当一头速度快的奶牛追上另外一头奶牛的时候,他必须降速成同等速度。我们把这些跑走同一个位置而且同等速度的牛看成一个小组。

请计算T (1 <= T <= 1,000,000,000)时间后,奶牛们将分为多少小组。


#include<queue>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1e5+10;
#define ll long long
ll now[N];
ll T,n;
int main(){
    cin>>n>>T;
    for(ll i=1,x,v;i<=n;i++){
        scanf("%lld%lld",&x,&v);
        x-=1e9;
        now[i]=x+v*T;
    }
    ll ans=1;
    for(int i=n-1;i>=1;i--){
        if(now[i]>=now[i+1])
        now[i]=now[i+1];
        else ans++;
    }
    cout<<ans<<endl;
}

luogu P3111 [USACO14DEC]牛慢跑Cow Jog_Sliver |贪心+模拟

原文:https://www.cnblogs.com/naruto-mzx/p/11855533.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!