最后一个点和答案一样但没过,蒟蒻求助!
查看原帖
最后一个点和答案一样但没过,蒟蒻求助!
178347
是晴天呀楼主2021/4/19 17:22

我自己测试时最后一个点和答案一模一样,但提交了多次都没过,希望dalao帮忙看看哪里出问题了???

感激不尽!!!

#include<stdio.h>
#include<iostream>
#include<algorithm>
using namespace std;
const int N=5010;
struct tree
{
	int a;
	int b;
}t[N];
bool cmp(tree a,tree b)
{
	return a.b<=b.b; 
}
int n,tot,ans[N];
int main()
{
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	scanf("%d%d",&t[i].a,&t[i].b);
	sort(t+1,t+1+n,cmp);
	ans[++tot]=t[1].a;
	for(int i=2;i<=n;i++)
	{
		if(t[i].a<ans[tot]) ans[++tot]=t[i].a;
		else 
		{
			int l=1,r=tot;
			while(l<r)
			{
				int mid=(l+r)/2;
				if(t[i].a>=ans[mid]) r=mid;
				else l=mid+1;
			}
			ans[l]=t[i].a;
		}
	}
	printf("%d\n",tot);
	return 0;
}
2021/4/19 17:22
加载中...