40分求助,玄关
查看原帖
40分求助,玄关
1020566
prg_equal_depressed楼主2024/7/15 15:05
#include<iostream>
#include<cmath>
using namespace std;
int n,s,a[30005],dp_1[30005],dp_2[30005];
int main(){
	cin>>n;
	for (int i=1;i<=n;i++){
		cin>>a[i];
	}
	for (int i=1;i<=n;i++){
		for (int j=1;j<i;j++){
			if (a[i]>=a[j]) dp_1[i]=max(dp_1[i],dp_1[j]);
		}
		dp_1[i]++;
	}
	for (int i=1;i<=n;i++){
		for (int j=1;j<i;j++){
			if (a[i]<=a[j]) dp_2[i]=max(dp_2[i],dp_2[j]);
		}
		dp_2[i]++;
	}
	for (int i=1;i<=n;i++){
		s=max(s,max(dp_1[i],dp_2[i]));
	}
	cout<<n-s;
	return 0;
}
2024/7/15 15:05
加载中...