为什么我第五个点wa

Wrong Answer

状态 耗时 内存占用

#1 Accepted 0ms 984.0KiB
#2 Accepted 0ms 988.0KiB
#3 Accepted 0ms 996.0KiB
#4 Accepted 0ms 988.0KiB
#5 Wrong Answer 0ms 984.0KiB
#6 Accepted 0ms 984.0KiB
以下是代码
#include<iostream>
#include<stdio.h>
#include<cstring>
using namespace std;
int main()
{
int n=0,h[30]={0},f[25]={0},l[30]={0};
char c;
for(int i=1;i>=0;i++)
{
cin>>h[i];
c=getchar();
n++;
if(c !=',')
break;
}
/////////////////////////////////////////////////////////
f[1]=1;
l[1]=h[1];
for(int i=2;i<=n;i++)
{
f[i]=1;
l[i]=h[i];
for(int j=1;j<i;j++)
{
if(h[i]<=l[j])
{
if(f[i]<f[j]+1)
{
f[i]=f[j]+1;
l[i]=h[i];
}
if(f[i]==f[j]+1)
{
f[i]=f[j]+1;
if(l[i]<h[i])
l[i]=h[i];
}
}
else
if(f[i]<f[j])
{
f[i]=f[j];
l[i]=h[j];
}
}
}
cout<<f[n]<<",";
/////////////////////////////////////////////////////////
int g[25]={0};
g[1]=h[1];
int t=1;
for(int i=2;i<=n;i++)
{
for(int j=1;j<=t+2;j++)
{
if(h[i]<=g[j])
{
g[j]=h[i];
break;
}
else
{

if(g[j]==0)
{
t++;
g[j]=h[i];
break;
}
}
}
}
cout<<t-1;
return 0;
}

0 条评论

目前还没有评论...

信息

ID
1303
难度
6
分类
动态规划 | 单调性DP 点击显示
标签
递交数
7594
已通过
2015
通过率
27%
被复制
12
上传者