又見攔截飛彈 LIS

2021-09-09 01:33:14 字數 898 閱讀 5613

時間限制:

3000 ms  |  記憶體限制:65535 kb

難度:3

描述

大家對攔截飛彈那個題目應該比較熟悉了,我再敘述一下題意:某國為了防禦敵國的飛彈襲擊,新研製出來一種飛彈攔截系統。但是這種飛彈攔截系統有乙個缺陷:它的第一發炮彈能夠到達任意的高度,但是以後每一發炮彈都不能超過前一發的高度。突然有一天,雷達捕捉到敵國的飛彈來襲。由於該系統存在缺陷,所以如果想把所有的飛彈都攔截下來,就要多準備幾套這樣的飛彈攔截系統。但是由於該系統成本太高,所以為了降低成本,請你計算一下最少需要多少套攔截系統。

輸入

有多組測試資料。

每組資料先輸入乙個整數n(n≤3000),代表有n發飛彈來襲。接下來有n個數,分別代表依次飛來的飛彈的飛彈的高度。當n=-1時表示輸入結束。

輸出每組輸出資料佔一行,表示最少需要多少套攔截系統。

樣例輸入

8

389 207 155 300 299 170 158 65

5265 156 123 76 26

樣例輸出

2

1題解:lis

**:

#include#include#include#include#includeusing namespace std;

const int inf=0x3f3f3f3f;

#define mem(x,y) memset(x,y,sizeof(x))

const int maxn=3010;

int dp[maxn],missile[maxn];

int main(){

int n;

while(scanf("%d",&n),n!=-1){

mem(dp,0);

for(int i=0;i

NYOJ 814 又見攔截飛彈 LIS

但是這種飛彈攔截系統有乙個缺陷 它的第一發炮彈能夠到達任意的高度,但是以後每一發炮彈都不能超過前一發的高度。突然有一天,雷達捕捉到敵國的飛彈來襲。由於該系統存在缺陷,所以如果想把所有的飛彈都攔截下來,就要多準備幾套這樣的飛彈攔截系統。但是由於該系統成本太高,所以為了降低成本,請你計算一下最少需要多少...

nyoj 814又見攔截飛彈

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 大家對攔截飛彈那個題目應該比較熟悉了,我再敘述一下題意 某國為了防禦敵國的飛彈襲擊 新研製出來 一種飛彈攔截系統 但是這種飛彈攔截系統有乙個缺陷 它的第一發炮彈能夠到達任意的高度 但是以後每一發炮彈都不能超過前一發的高度 突然有...

nyoj 814 又見攔截飛彈

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 大家對攔截飛彈那個題目應該比較熟悉了,我再敘述一下題意 某國為了防禦敵國的飛彈襲擊 新研製出來 一種飛彈攔截系統 但是這種飛彈攔截系統有乙個缺陷 它的第一發炮彈能夠到達任意的高度 但是以後每一發炮彈都不能超過前一發的高度 突然有...