HDU 1257 最少拦截系统

  本来这题我想的是最大拦截导弹序列和最少拦截序列个数,但没怎么如何代码实现。

 然后想每次删除递减序列,删减的次数就是拦截系统的个数,居然AC了。


#include<iostream>
#include<vector>
using namespace std;
int main()
{
   int a,n,i,c,t;
   vector<int> v;
   while(cin>>n)
   {
	   c=0;
	   for(i=0;i<n;i++)
	   {
	      cin>>a;v.push_back(a);
	   }
	   while(v.size()!=0)
	   {
		   c++;
	     t=v[0];v.erase(v.begin());
	
		 if(!v.size()) break;
		 for(i=0;i<v.size();i++)
		 {
			 if(v[i]<=t) {t=v[i];v.erase(v.begin()+i);i--;}
		 }
	   }
	   cout<<c<<endl;
   }
   return 0;
}


你可能感兴趣的:(HDU 1257 最少拦截系统)