NYOJ814 又见导弹拦截
来源:互联网 发布:淘宝店铺直播怎么看 编辑:程序博客网 时间:2024/05/21 22:02
原题链接:导弹拦截
又见拦截导弹
- 描述
大家对拦截导弹那个题目应该比较熟悉了,我再叙述一下题意:某国为了防御敌国的导弹袭击,新研制出来一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度。突然有一天,雷达捕捉到敌国的导弹来袭。由于该系统存在缺陷,所以如果想把所有的导弹都拦截下来,就要多准备几套这样的导弹拦截系统。但是由于该系统成本太高,所以为了降低成本,请你计算一下最少需要多少套拦截系统。
- 输入
- 有多组测试数据。
每组数据先输入一个整数N(N≤3000),代表有N发导弹来袭。接下来有N个数,分别代表依次飞来的导弹的导弹的高度。当N=-1时表示输入结束。 - 输出
- 每组输出数据占一行,表示最少需要多少套拦截系统。
- 样例输入
8389 207 155 300 299 170 158 655265 156 123 76 26
- 样例输出
21
#include<iostream>
using namespace std;
#define INF 0x0fffffff
int dp[3010];//其中dp[i]表示第i个导弹索要拦截的高度
int main()
{
int n,x,res,Min;
bool flag;
while(cin>>n)
{
int i,j;
res = 0;
if(n==-1)
break;
for(j=0;j<n;j++)
{
flag = false;
Min = INF;
cin>>x;
int temp;
for(i=0;i<res;i++)
{
if(x <= dp[i] && Min > dp[i] - x)
{
Min = dp[i] - x;
temp = i;
flag = true;
}
}
if(!flag)//当前系统不能拦截该导弹
{
dp[res] = x;
res++;
}
else
{
dp[temp] = x;
}
}
cout<<res<<endl;
}
return 0;
}
- NYOJ814 又见导弹拦截
- nyoj814又见拦截导弹
- nyoj814 又见拦截导弹 贪心
- 动态规划之——又见拦截导弹(nyoj814)
- 又见拦截导弹
- 又见拦截导弹
- 又见拦截导弹
- 又见拦截导弹
- 又见拦截导弹
- 又见拦截导弹
- 又见拦截导弹
- 又见导弹拦截
- 又见拦截导弹
- 又见拦截导弹
- 814 又见拦截导弹
- nyoj 又见导弹拦截
- NYOJ 又见拦截导弹
- NYOJ 又见拦截导弹
- hadoop2.2.0 mapred-site.xml--i/o properties
- hadoop2.2.0 maprd-site.xml--Proxy Configuration
- hadoop2.2.0 maprd-site.xml--Node health script variables
- hadoop2.2.0 mapred-site.xml--end of node health script variables
- hadoop2.2.0 mapred-site.xml--Job Notification Configuration
- NYOJ814 又见导弹拦截
- hadoop2.2.0 maprd-site.xml--jobhistory properties
- mac os下Python模块安装错误
- php学习基础-文件系统(二) 文件读写操作、文件资源处理
- rpm包制作
- 简易vsftp搭建
- 本地yum源搭建
- hadoop 2.2完全分布式搭建 --准备
- JavaScript中你可能不知道的九件事