p1020专题

P1020 导弹拦截(dp,二分提速)

这是什么神仙想出来的方法! 题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达给出的高度数据是 \le 50000≤50000的正整数)

(Luogu) p1020导弹拦截

https://www.luogu.org/problemnew/show/P1020 dp的做法,复杂度是 O(n^2),只能得100分,一个dp求的是最长下降子序列长度,一个dp求的是最少有多少个最长不上升序列, #include<bits/stdc++.h>using namespace std;const int maxn=1e5+5;int f[maxn];int dp[ma

P1020 [NOIP1999 提高组] 导弹拦截

题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。 输入导弹依次飞来的高度,计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。 输入