求大佬查错,4分,样例不对,悬4关(不够还可以加)
查看原帖
求大佬查错,4分,样例不对,悬4关(不够还可以加)
825619
kara20楼主2024/1/2 17:30
#include<bits/stdc++.h>
using namespace std;
int n,k,ans=0,cnt=0,f[50009],a[50009],g[50009];
int main()
{
    n=1;
    while(cin>>a[n])
    {
    	n++;
	}
	n--;
    for(int i=1;i<=n;i++)
    {
        g[i]=1;
    }
    for(int i=n-1; i>=1; i--)
    {
        for(int x=i+1; x<=n; x++)
        {
            if(a[x]<a[i]&&g[i]<g[x]+1)
            {
                g[i]=g[x]+1;
            }
        }
    }

   for(int i=1;i<=n;i++)
   {
       ans=max(ans,g[i]);
   }
   for(int i=1;i<=n;i++)
    {
        f[i]=1;
    }
    for(int i=2;i<=n;i++)
    {
        for(int x=1;x<i;x++)
        {
            if(a[i]>a[x]&&f[i]<f[x]+1)
            {
                f[i]=f[x]+1;
            }
        }
    }
    for(int i=1;i<=n;i++)
   {
       cnt=max(ans,f[i]);
   }
   cout<<ans<<endl<<cnt;
}

详情

2024/1/2 17:30
加载中...