防御导弹问题(动态规划)

防御导弹问题(动态规划)

在这里插入图片描述
分析:从后先找到每个数的最大的数目,往前求时利用后面已经求的数目。

#include<bits/stdc++.h>
using namespace std;
int a[20],b[20];
int k=1;
int main()
{
    
    	
	while(scanf("%d",&a[k])!=EOF)
	{
    
    
	  k++;
	}
	for(int i=1;i<k;i++)
	{
    
    
		b[i]=1;
		for(int j=1;j<i;j++)
		{
    
    
			if(a[j]>=a[i])
			b[i]=max(b[i],b[j]+1);
		}
	}
	sort(b,b+k);
	printf("%d\n",b[k-1]);
	return 0;
}

猜你喜欢

转载自blog.csdn.net/p15008340649/article/details/110755701