2 条题解

  • 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;
    

    } `

    • 0
      @ 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
      难度
      3
      标签
      递交数
      53
      已通过
      31
      上传者