比赛 防止浮躁的小练习v0.7 评测结果 AAAAAAAAAA
题目名称 拦截导弹 最终得分 100
用户昵称 Hexฏ๎๎๎๎๎๎๎๎๎ۣۣۣ 运行时间 0.015 s
代码语言 C++ 内存使用 0.33 MiB
提交时间 2016-10-27 19:28:49
显示代码纯文本
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>

using namespace std;

int a[1005],d[1005],b[1005],max1,max2;

int main(int argc,char ** argv){
	freopen("missile.in","r",stdin);
	freopen("missile.out","w",stdout);
	int i=1,j,k;
	char c=',';
	while( scanf("%d",&a[i]) != EOF )
	  {
//	  	scanf("%d",&a[i]);
//	  	c=getchar();
	  	i++;
	  }
	int n=i-1;
//	cout<<n<<endl;
//	for(i=1;i<=n;i++)
//	  cout<<a[i]<<" ";
	fill(d+1,d+n+1,1);
	fill(b+1,b+n+1,1);
	
	
	
	for(i=1;i<=n;i++)
	  for(j=1;j<i;j++)
	  	if( a[i] <= a[j] && b[i] < b[j] + 1 )
	  	  b[i]=b[j]+1;
	  	  
	for(i=1;i<=n;i++)
	  for(j=1;j<i;j++)
	    if( a[i] > a[j] && d[i] < d[j] + 1 )
	      d[i]=d[j]+1;

	max1=0;
	max2=0;
	
	for(i=1;i<=n;i++)
	  {
	  	if( d[i] > max1 )
	  	  max1=d[i];
	  	if( b[i] > max2 )
	  	  max2=b[i];
	  }
	cout<<max2<<endl<<max1;
	return 0;
}