110求调!
查看原帖
110求调!
760019
ZS_Lichi楼主2025/1/22 12:05

第三个点第一问多了1

#include <bits/stdc++.h>
using namespace std;
int n,i,len=1,len1=1;
int a[100010],b[100010],f[100010];
int main(){
	while(cin >> n){
		a[i] = n;
		i++;
	}
	f[1] = a[1];
	for(int j = i;j >=2;j--){
		int pos = upper_bound(f+1,f+len+1,a[j])-f;
		f[pos] = a[j];
		if(pos>len) len++;
	}
	b[1] = a[1];
	for(int j = 2;j <=i;j++){
		int pos = lower_bound(b+1,b+len1+1,a[j])-b;
		b[pos] = a[j];
		if(pos>len1) len1++;
	}
	cout << len <<endl;
	cout << len1;
	return 0;
}

			

2025/1/22 12:05
加载中...