luogu P1020 导弹拦截

Posted sevenyuanluo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了luogu P1020 导弹拦截相关的知识,希望对你有一定的参考价值。

emmmm

哇200分

好快乐

技术分享图片

emmm

它为什么是黄题???

第一问很好想,就是最长不上升子序列

第二问也同样,最长上升子序列

嗯看代码吧

#include<cstdio>
#include<algorithm>
using namespace std;
#define maxn 100010

int l1[maxn],l2[maxn],a[maxn];

int cmp(int x,int y) {
    return x > y;
}

int main() {
    int cnt = 1;
    while(scanf("%d",&a[cnt]) != EOF) {
        cnt++;
    }
    cnt--;//要减一个(因为这个qq姐卡了好久www
    int len1 = 1;
    int len2 = 1;
    l1[1] = l2[1] = a[1];
    for(int i = 2; i <= cnt; i++) {
        if(a[i] <= l1[len1])
            l1[++len1] = a[i];
        else {
            int u = upper_bound(l1 + 1,l1 + len1 + 1,a[i],cmp) - l1;//uppet_bound要用一个cmp定义,或者greater<int>也可以
            l1[u] = a[i];
        }
        if(a[i] > l2[len2])
            l2[++len2] = a[i];
        else {
            int l = lower_bound(l2 + 1,l2 + len2 + 1,a[i]) - l2;//stl大法好!
            l2[l] = a[i];
        }
    }
    printf("%d
%d",len1,len2);
    return 0;
}

我写的好草率啊

就酱吧www

 

以上是关于luogu P1020 导弹拦截的主要内容,如果未能解决你的问题,请参考以下文章

Luogu P1020 导弹拦截

洛谷P1020导弹拦截——LIS

导弹拦截p1020(LIS问题)

线性状态动态规划 P1020 导弹拦截最长上升子序列

洛谷 P1020 导弹拦截 最长上升子序列 || 线段树

P1020 导弹拦截 /// DP Dilworth定理 LIS优化