100分蒟蒻求助
查看原帖
100分蒟蒻求助
1126200
noWAnoWA楼主2024/9/13 20:00

求大佬改一下这个超时程序(由于我是蒟蒻所以不会改)

#include <iostream>
using namespace std;
int i=1,x,n,maxx,m,a[100100],b[101000],h[100100];
int main(){
    while(cin>>a[i]){
        maxx=0;
        for(int j=1;j<=i-1;j++) if(a[j]>=a[i]&&b[j]>maxx) maxx=b[j];
        b[i]=maxx+1;
        if(b[i]>m) m=b[i];
        x=0;
        for(int k=1;k<=n;k++) {
            if(h[k]>=a[i])
            if(x==0) x=k;
            else if(h[k]<h[x]) x=k;
        }
        if(x==0) n++,x=n;
        h[x]=a[i],i++;
    }
    cout<<m<<endl<<n;
    return 0;
}
2024/9/13 20:00
加载中...