求助!91分dp代码
查看原帖
求助!91分dp代码
969393
ZYX_GanJi楼主2023/10/3 15:10
#include<bits/stdc++.h>
#include<vector>
using namespace std;

struct sb
{
	int x;
	int y;
}b[100000];
bool cmp(sb a,sb b)
{
	if(a.x==b.x) a.y>b.y;
	else return a.x>b.x;
}
long long n,a[1000000],d[1000000],len=1;
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>b[i].x>>b[i].y;
	}
	sort(b+1,b+n+1,cmp);
	for(int i=1;i<=n;i++)
	{	
		a[i]=b[i].y;
	}
	d[1]=a[1];
	for(int i=2;i<=n;i++)
	{
		int pos=lower_bound(d+1,d+len+1,a[i])-d;
		d[pos]=a[i];
		if(pos==len+1)len++;
	}
	cout<<len;
/*	for(int i=1;i<=n;i++)
	{
		cout<<b[i].x<<" "<<b[i].y<<endl;
	}*/
	return 0;
}

八号点错误,也找不到原因,求帮助

2023/10/3 15:10
加载中...