3 条题解

  • 0
    @ 2026-8-13 10:21:31
    # include <bits/stdc++.h>
    
    using namespace std;
    const int N=1e4+5;
    int a[N],dp[N],n,maxx;
    int main(){
    	cin>>n;
    	for(int i = 1;i<=n;i++){
    		cin>>a[i];
    		dp[i]=1;
    		for(int j=1;j<i;j++)
    			if(a[i]>=a[j])
    				dp[i]=max(dp[i],dp[j]+1);
    		maxx=max(maxx,dp[i]);
    	}
    	cout<<maxx<<endl;
    	return 0;
    }
    
    • 0
      @ 2025-5-11 18:00:46

      `#include<bits/stdc++.h> using namespace std; const int N=1e5+10; const int INF=0x3f3f3f3f; int n,a[N],dp[N],maxx; int main() { cin>>n; for(int i=1;i<=n;i++){ cin>>a[i]; dp[i]=1; } for(int i=1;i<=n;i++){ dp[i]=1; for(int j=1;j<i;j++){ if(a[j]<a[i]){ dp[i]=max(dp[i],dp[j]+1); } } maxx=max(maxx,dp[i]); } cout<<maxx;

      return 0;
      

      } `

      • -1
        @ 2023-6-8 18:23:00
        #include<bits/stdc++.h> //不想用其他头,太麻烦
        using namespace std;
        
        int f[1010],a[1010];
        
        int main()
        {
        	int n;
        	while(cin>>n)
        	{
        	   for(int i=1;i<=n;i++)   cin>>a[i];
        	   for(int i=1;i<=n;i++) f[i]=1;
        
        	   int ans=1;
        	   for(int i=2;i<=n;i++)
        	   {
        	       for(int j=1;j<i;j++)
        	       {
        	           if(a[j]<a[i]) f[i]=max(f[i],f[j]+1);
                   }
                   ans=max(ans,f[i]);
               }
               cout<<ans<<endl;
            }
        	return 0;
        }
        
        • 1

        信息

        ID
        1621
        时间
        1000ms
        内存
        256MiB
        难度
        6
        标签
        递交数
        142
        已通过
        49
        上传者