洛谷OJ P1020 飛彈攔截 LIS

2021-08-18 18:40:15 字數 652 閱讀 5113

思路:problem1:  第乙個問題就是求最長不上公升子串行長度

problem2: 第二個問題看上去有些難, 但是通過組合數學中的"dilworth定理"可以知道"最少的下降序列個數就等於整個序列最長上公升子串行的長度", 所以第二個問題就是求最長上公升子串行長度

/**

* 題目: 洛谷oj p1020 飛彈攔截

* 題型: dp

**/#include #include using namespace std;

const int maxn = 100000+10;

int a[maxn], b[maxn], n, ans;

int main()

b[r] = a[i];

} }cout << ans << endl;

//problem 2

ans = 1; b[1] = a[1];

for(int i = 2; i <= n; i++)

b[r] = a[i];

} }cout << ans << endl;

return 0;

}

洛谷P1020 飛彈攔截

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

洛谷 P1020 飛彈攔截

題目大意 對於乙個飛彈攔截系統 它的第一發炮彈能夠攔截任意高度的飛彈,但之後攔截的每一發炮彈都不能高於前一發的高度。輸入n發飛彈依次飛來的高度a i 計算這套系統最多能攔截多少飛彈,如果要攔截所有飛彈最少要配備多少套這種飛彈攔截系統。1 n 100 0 a i 30000 題解 p i 表示攔截了第...

洛谷 P1020 飛彈攔截

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