萌新求助站外题qwq
  • 板块学术版
  • 楼主villazhou2011
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/11/12 13:19
  • 上次更新2023/11/12 15:17:24
查看原帖
萌新求助站外题qwq
653832
villazhou2011楼主2023/11/12 13:19

RT,题目链接
WA 0pts,求Hack或正解。

#include<bits/stdc++.h>
using namespace std;
int f[500002];
stack<int>t;
int main()
{
	int n;
	cin>>n;
	int a[n+1];
	for(int i=1;i<=n;i++)cin>>a[i];
	f[1]=1;
	for(int i=2;i<=n;i++)
	{
		f[i]=1;
		for(int j=1;j<i;j++)
		{
			if(a[i]>=a[j])
			{
				f[i]=max(f[i],f[j]+1);
			}
		}
	}
	int maxn=-1;
	for(int i=1;i<=n;i++)
	{
		maxn=max(f[i],maxn);
	}
	cout<<"max="<<maxn<<endl;
	for(int i=n;i>=1;i--)
	{
		if(f[i]==maxn)
		{
			t.push(a[i]);
			maxn--;
		}
		if(maxn==0)break;
	}
	while(t.size())
	{
		cout<<t.top()<<" ";
		t.pop();
	}
 	return 0;
}
2023/11/12 13:19
加载中...