记录编号 37527 评测结果 AAAAAAAAAA
题目名称 导弹系统 最终得分 100
用户昵称 GravatarMakazeu 是否通过 通过
代码语言 C++ 运行时间 0.047 s
提交时间 2012-03-31 20:15:14 内存使用 0.27 MiB
显示代码纯文本
#include <cstdlib>
#include <cstdio>
#include <cstring>
using namespace std;
const int MAXN=1002;
int Ans=0;
int Num[MAXN];
int F[MAXN][2];
int N;
 
inline int Max(int a,int b) {return a>b?a:b;}
 
void dp()
{
    for(int i=1;i<=N;i++)
    {
        for(int j=0;j<i;j++)
        {
            if(Num[i]>Num[j]) F[i][0]=Max(F[i][0],F[j][1]+1);
            if(Num[i]<Num[j]) F[i][1]=Max(F[i][1],F[j][0]+1);
            Ans=Max(F[i][0],Ans);
            Ans=Max(F[i][1],Ans);
        }
    }
}
 
void init()
{
    Num[1]=-10000000;
    for(scanf("%d\n",&N);N;scanf("%d\n",&N))
    {
        Ans=0;
        memset(F,0,sizeof(F));
        for(int i=1;i<=N;i++) scanf("%d",&Num[i]);
        dp();
        printf("%d\n",Ans);
    }
}
 
int main()
{
    freopen("missilea.in","r",stdin);
    freopen("missilea.out","w",stdout);
    init();
    return 0;
}