描述
某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。
输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。
格式
输入格式
n颗依次飞来的高度(1≤n≤1000)。
输出格式
要拦截所有导弹最小配备的系统数k。
样例
输入样例
389 207 155 300 299 170 158 65
输出样例
2
限制
时间限制: 1000 ms
内存限制: 65536 KB
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
int n=0, tmp, x, k=1, tmp2, a[1005], b[1005];//a[]用来存储导弹高度,b[]用来存储系统高度
bool flag = true; //flag用于判断是否需要增加一套系统
memset(a, 0, sizeof(a)); //初始化
memset(b, 0, sizeof(b));
while(cin >> tm