1 条题解

  • 1
    @ 2023-10-18 19:44:56

    dp

    #include <bits/stdc++.h>
    using namespace std;
    int f[100010],a[100010];
    int main()
    {
        int n;
        cin>>n;
        for(int i=1;i<=n;i++) cin>>a[i];
        for(int i=1;i<=n;i++)
        {
        	f[i]=1;
    		for(int j=1;j<=i-1;j++)
                if(a[j]<a[i])
                    f[i]=max(f[i],f[j]+1);
    	}
        int ans=0;
        for(int i=1;i<=n;i++)
            ans=max(ans,f[i]);
        cout<<ans;
        return 0;
    }
    
    • 1

    信息

    ID
    7531
    时间
    1000ms
    内存
    512MiB
    难度
    2
    标签
    递交数
    19
    已通过
    14
    上传者