某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。
#include "stdio.h"
int findmax(int a[],int n)
{
int i;
int index=0;
int temp=a[0];
for(i=0;i<n;i++)
if(temp<a[i])
{
temp=a[i];
index=i;
}
return index;
}
int manage(int a[],int n)
{
int i,j,k;
int max,temp,flag=1;
int count=0;
int index=0;
for(i=0;i<n;i++)
{
index=findmax(a,n);
if(a[index]!=0)
{
count++;
temp=index; // if find
a[index]=0;
for(j=index+1;j<n;j++)
{
index=findmax(&a[j],n-j)+j;
if(a[index]<temp);
{
temp=a[index];
a[index]=0;
j=index;
}
}
}
}
printf("%d\n",count);
return 0;
}
int main()
{
int n,i,j;
int a[10000];
while(1)
{
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
manage(a,n);
}
return 0;
}