社区讨论

求助!MLE

P1020[NOIP 1999 提高组] 导弹拦截参与者 3已保存回复 6

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
6 条
当前快照
1 份
快照标识符
@lo861e2t
此快照首次捕获于
2023/10/27 13:21
2 年前
此快照最后确认于
2023/10/27 13:21
2 年前
查看原帖
CPP
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main(){
    int i,j,k,x,n,maxx,m,a[10000000],b[100000000],h[100000000];
    i=1;n=0;m=0;
    memset(a,0,sizeof(a));
    memset(b,0,sizeof(b));
    memset(h,0,sizeof(h));
    while(cin>>a[i]){
        maxx=0;
        for(j=1;j<=i-1;j++)
            if(a[j]>=a[i])
                if(b[j]>maxx)
                    maxx=b[j];
        b[i]=maxx+1;
        if(b[i]>m) m=b[i];
        x=0;
        for(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<<endl;
    return 0;
}

回复

6 条回复,欢迎继续交流。

正在加载回复...