程序笔记   发布时间:2022-07-14  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了1260:【例9.4】拦截导弹(Noip1999)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

拦截导弹

 1 #include<iostream>
 2 using namespace std;
 3 const int N=1005;
 4 int main(){
 5     int t,r=0,cnt=0,maxx=0,k[n],a[n],b[n];
 6     while(cin>>t){
 7         //第一问:dp
 8         a[++cnt]=t;
 9         b[cnt]=1;//初始化
10         for(int i=1;i<cnt;i++)
11             if(a[i]>=a[cnt])b[cnt]=max(b[i]+1,b[cnt]);
12         maxx=@H_308_12@max(maxx,b[cnt]);
13         //遍历已有的拦截系统,选择代价最小的进行拦截,实在拦截不了就再添加一个拦截系统
14         int mi=30*N,s;
15         for(int i=0;i<r;i++){
16             if(t<=k[i]){
17                 if(mi>k[i]-t){
18                     mi=k[i]-t;
19                     s=i;
20                 }
21             }
22         }
23         if(mi<30*N)k[s]=t;
24         else k[r++]=t;
25     }
26     cout<<maxx<<"n"<<r;
27     return 0;
28 }

 

大佬总结

以上是大佬教程为你收集整理的1260:【例9.4】拦截导弹(Noip1999)全部内容,希望文章能够帮你解决1260:【例9.4】拦截导弹(Noip1999)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。