题解
2023-03-31 21:07:37
发布于:上海
24阅读
0回复
0点赞
#include<iostream>
#include<algorithm>
using namespace std;
long long a[100010],c[100010],top,n,t;
int main()
{
long long p,v;
scanf("%lld%lld",&n,&t);
for(int i=1;i<=n;i++)
{
scanf("%lld%lld",&p,&v);
a[i]=p+v*t;
}
for(int i=n;i>=1;i--)
{
if(!top||a[i]>=c[top])
c[++top]=a[i];
else
{
int t=upper_bound(c+1,c+top+1,a[i])-c;
c[t]=a[i];
}
}
printf("%lld\n",top);
}
这里空空如也
有帮助,赞一个