TLE一半 求助
查看原帖
TLE一半 求助
345930
Gold14526楼主2021/5/3 19:23

前面一半测试点AC后面全TLE……

#include<bits/stdc++.h>
#pragma -O3
using namespace std;
int main()
{
	string t;
	getline(cin,t);
	int w=1,t2=1;
	for(int i=0;i<t.size();i++)
	{
		if(t[i]==' ')
		w++;
	}
	int a[w+1];
	fill(a+1,a+w+1,0);
	for(int i=0;i<t.size();i++)
	{
		if(t[i]==' ')
		{
			t2++;
			continue;
		}
		a[t2]=a[t2]*10+t[i]-'0'; 
	}
	int c[w+1],f[w+1],in;
	c[0]=100001;
	t2=1;
	for(int i=1;i<=w;i++)
	{
		f[i]=1;
		for(int j=i-1;j>=1;j--)
		{
			if(a[j]>=a[i])f[i]=max(f[i],f[j]+1);
		}
		t2=max(t2,f[i]);
	}
	printf("%d\n",t2);
	t2=0;
	for(int i=1;i<=w;i++)
	{
		in=0;
		for(int j=1;j<=t2;j++)
		{
			if(a[i]<=c[j]&&c[j]<=c[in])in=j;
		}
		if(in==0)
		{
			c[++t2]=a[i];
			continue;
		}
		c[in]=a[i];
	}
	printf("%d",t2);
	return 0;
}

求助

2021/5/3 19:23
加载中...