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

hdu 6197 array array array

时间:2017-09-10 23:49:46      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:i++   space   namespace   pre   log   not   als   ace   include   

http://acm.hdu.edu.cn/showproblem.php?pid=6197

题意:给你一个数组 然后给你一个k  让你从数组里面剔除k个数  使得剩余的数组 是 单调非递减  或 单调非递增的

判断可不可能

 

思路 : 直接写LIS  然后判断 n-k 和 LIS 长度的大小关系

 

#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e5+100;
const int INF = 0x3f3f3f3f;
int n,m;
int s[maxn];
int cnt[maxn];

int main ()
{
    ios::sync_with_stdio(false);
    int t;
    cin >> t;
    while (t--){
        cin >> n >> m;
        for(int i=1;i<=n;i++)
            cin >> s[i];
        fill(cnt,cnt+n,INF);
        for(int i=1;i<=n;i++)
        {
            *upper_bound(cnt,cnt+n,s[i]) = s[i];
        }
        int len1 = lower_bound(cnt,cnt+n,INF) - cnt;
        fill(cnt,cnt+n,INF);
        for(int i=n;i>=1;i--)
        {
            *upper_bound(cnt,cnt+n,s[i]) = s[i];
        }
        int len2 = lower_bound(cnt,cnt+n,INF) - cnt;
        int ans = max(len1,len2);
        if(n-m > ans)
            puts("A is not a magic array.");
        else
            puts("A is a magic array.");
    }
}

 

hdu 6197 array array array

标签:i++   space   namespace   pre   log   not   als   ace   include   

原文地址:http://www.cnblogs.com/Draymonder/p/7502698.html

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