yu55555 @ 2019-08-30 17:39:58
思路是,按位置把每头牛与后面的比较看能否追上,能的话n--,然后看下一头牛,直到倒数第二头
#include<bits/stdc++.h>
#define ll long long
#define debug(x) cout<<"["<<x<<"]" <<endl;
#define mem(a,b) memset(a,b,sizeof(a));
#define f(x,y) for(ll x=1;x<=y;x++)
#define inf 0x3f3f3f3f
using namespace std;
ll n,t,res;
int main(){
int p,s,p2,s2;
cin>>n>>t;
res=n;
cin>>p>>s;
f(i,n-1){
cin>>p2>>s2;
if(s2<s&&(s-s2)*t>=(p2-p))res--;
p=p2;
s=s2;
}
cout<<res;
return 0;
}
by infinities @ 2019-08-30 17:49:55
标题不清qwq
by yu55555 @ 2019-08-30 17:57:28
请问有大佬帮忙提交一下吗
by yu55555 @ 2019-08-30 18:02:25
@装弱是种美德 请问能帮忙提交一下吗,谢谢了
by infinities @ 2019-08-30 18:09:34
@yu55555 泥确定
by yuyc @ 2019-08-30 18:24:22
@yu55555 没必要这么懒吧
by yuyc @ 2019-08-30 18:25:01
by yuyc @ 2019-08-30 18:27:54
@yu55555 亲测1ac 14wa还我提交次数
by yu55555 @ 2019-08-30 18:49:18
思路不知道有什么问题,我就是一个一个判断他速度是否比后面的快,快的话再判断t时间内能不能追上,能的话就合并,减一,然后再判断后一头牛,
by yu55555 @ 2019-08-30 18:49:55
@yuyc 嗯嗯,谢谢了,思路也不知道哪出错了
by yu55555 @ 2019-08-30 19:05:40
哦哦,我知道了,不能正着来,因为 可能第一头牛追不上第二头,但是如果第二头牛被第三头牛挡住了,那么第一头牛是有可能追上第二头的,所以只能从最后一头牛开始考虑,然后更新被堵住牛的速度和位置