NYOJ 題目79 攔截飛彈

2021-06-22 06:14:27 字數 930 閱讀 6206

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度: 3

描述 某國為了防禦敵國的飛彈襲擊,發展中一種飛彈攔截系統。但是這種飛彈攔截系統有乙個缺陷:雖然它的第一發炮彈能夠到達任意的高度,但是以後每一發炮彈都不能高於等於前一發的高度。某天,雷達捕捉到敵國飛彈來襲。由於該系統還在試用階段,所以只用一套系統,因此有可能不能攔截所有的飛彈。

輸入

第一行輸入測試資料組數n(1<=n<=10)

接下來一行輸入這組測試資料共有多少個飛彈m(1<=m<=20)

接下來行輸入飛彈依次飛來的高度,所有高度值均是大於0的正整數。

輸出輸出最多能攔截的飛彈數目

樣例輸入

2

8389 207 155 300 299 170 158 65

388 34 65

樣例輸出

6

2

這是第一次深入的了解動態規劃的經典思想,第一次做最長單調遞增子串行的題,動態陣列在初始化的時候是要把所有從1到n 的陣列初始化為1。

最長單調子串行就是在遍歷每乙個陣列的位址的時候,每到達乙個位置就再加乙個迴圈從頭開始。以陣列a記錄題中給出的資料,以陣列dp記錄每乙個資料的狀態(在本題中就是

記錄當前陣列a中的當前資料前有幾個資料已經滿足了要求。)然後最後找出滿足要求的最大序列的數。

#include #include int a[50],dp[50];

int main (void)

dp[1]=1;

for(j=2;j<=m;j++)

}max=dp[2];

for(j=2;j<=m;j++)

printf("%d\n",max);}}

return 0;

}

題目79 攔截飛彈

某國為了防禦敵國的飛彈襲擊,發展中一種飛彈攔截系統。但是這種飛彈攔截系統有乙個缺陷 雖然它的第一發炮彈能夠到達任意的高度,但是以後每一發炮彈都不能高於等於前一發的高度。某天,雷達捕捉到敵國飛彈來襲。由於該系統還在試用階段,所以只用一套系統,因此有可能不能攔截所有的飛彈。第一行輸入測試資料組數n 1 ...

NYOJ 79 攔截飛彈

時間限制 3000 ms 記憶體限制 65535 kb難度 3 描述 某國為了防禦敵國的飛彈襲擊,發展中一種飛彈攔截系統。但是這種飛彈攔截系統有乙個缺陷 雖然它的第一發炮彈能夠到達任意的高度,但是以後每一發炮彈都不能高於等於前一發的高度。某天,雷達捕捉到敵國飛彈來襲。由於該系統還在試用階段,所以只用...

nyoj79攔截飛彈

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 某國為了防禦敵國的飛彈襲擊,發展中一種飛彈攔截系統。但是這種飛彈攔截系統有乙個缺陷 雖然它的第一發炮彈能夠到達任意的高度,但是以後每一發炮彈都不能高於等於前一發的高度。某天,雷達捕捉到敵國飛彈來襲。由於該系統還在試用階段,所以只...