码迷,mamicode.com
首页 > 其他好文 > 详细

luogu P1020 导弹拦截

时间:2019-01-19 11:19:42      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:ima   png   stl   ace   alt   .com   print   span   \n   

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\n%d",len1,len2);
    return 0;
}

我写的好草率啊

就酱吧www

 

luogu P1020 导弹拦截

标签:ima   png   stl   ace   alt   .com   print   span   \n   

原文地址:https://www.cnblogs.com/sevenyuanluo/p/10290556.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!