蒟蒻求助
查看原帖
蒟蒻求助
323989
Vector_Mingfan楼主2021/4/23 00:16
#include <cstdio>
#include <algorithm>
#define N 200005
using namespace std;

int n,l,b[N][3],k=1;
struct g {
	int start,terminus;//起点,终点 
}a[N];
bool cmp(g a,g b) {
	return a.start<b.start;
}

int main(void ) {
	scanf("%d",&n);
	for (int i=1;i<=n;i++) scanf("%d %d",&a[i].start,&a[i].terminus);
	stable_sort(a+1,a+n+1,cmp);
	for (int i=1;i<=n;i++){
		b[i][1]=a[i].terminus;
		b[i][2]=1;
	}
	for (int i=n-1;i>=1;i--){
		l=0;
		for (int j=i+1;j<=n;j++)
			if ((b[j][1]>b[i][1])&&(b[j][2]>l)) {
				l=b[j][2];
			}
		if (l>0)b[i][2]=l+1;
	}
	for (int j=1;j<=n;j++)
		if (b[j][2]>b[k][2])
			k=j;
	printf("%d",b[k][2]);
}

后几个点不知道怎么就TLETLE

2021/4/23 00:16
加载中...