1 条题解

  • 0
    @ 2026-8-9 9:55:24
    # include <bits/stdc++.h>
    
    using namespace std;
    const int N=1e6+5;
    int a[N],dp[N],n,len;
    int main(){
    	cin>>n;
    	for(int i = 1;i<=n;i++)
    		cin>>a[i];
    	dp[++len]=a[1];
    	for(int i = 2;i<=n;i++){
    		if(a[i]>=dp[len]){
    			dp[++len]=a[i];
    		}else{
    			int pos=lower_bound(dp+1,dp+len+1,a[i])-dp;
    			dp[pos]=a[i];
    		}
    	}
    	if(len>=n-1)cout<<"YES";
    	else cout<<"NO";
    	return 0;
    }
    
    • 1

    信息

    ID
    2570
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    递交数
    44
    已通过
    8
    上传者