0分求助
WA RTE TLE都有
#include<bits/stdc++.h>
using namespace std;
int n,d[100005],cnt,tel,ans;
int h[100005];
bool plan[100005]={false};
bool cmp(int x,int y)
{
return x<y;
}
void search(int step,bool p[],int hi)
{
if(step==n+1)
{
int c1=0;
for(int i=1;i<=n;i++)
{
if(p[i]==true)
c1++;
}
ans=max(ans,c1);
return;
}
if(hi>=d[step])
{
p[step]=true;
search(step+1,p,d[step]);
}
p[step]=false;
search(step+1,p,hi);
}
int main() {
while(cin>>d[++tel])
{
n++;
}
int high=2e9;
search(1,plan,high);
cout<<ans<<endl;
h[++cnt]=d[1];
for(int i=2;i<=n;i++)
{
sort(h+1,h+cnt+1,cmp);
for(int j=1;j<=cnt;j++)
{
if(h[j]>d[i])
{
h[j]=d[i];
break;
}
if(j==cnt)
{
h[++cnt]=d[i];
break;
}
}
}
cout<<cnt<<endl;
return 0;
}