青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 97, 文章 - 22, 評論 - 81, 引用 - 0
數據加載中……

ZJU 3349 Special Subsequence

題目鏈接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3349

/*
題意:
    給定一個d(0 <= d <= 10^8)和(N <= 10^5)的數列,求最長的特殊子序列,
所謂特殊子序列就是相鄰元素之間的絕對值之差小于等于d。

解法:
動態規劃+線段樹

思路:
    這題又是一個動態規劃,狀態轉移方程很容易想到:
    dp[ val[i] ] = 1 + max( dp[ val[i] - d ]  dp[ val[i] + d ] )
dp[j] 表示以j為止的最長特殊子序列的值,這樣就可以維護一個區間,每次
查詢和當前數絕對值差小于等于d的數組成的區間,將最大值+1更新到當前數
對應的位置上,利用線段樹每次更新和查詢都是log(n)。
*/


#include 
<iostream>
#include 
<cstdio>
#include 
<cstring>
using namespace std;

#define maxn 600010

int n, d;
int val[maxn];

struct Tree {
    
int Max;
    
int son[2];

    
void clear() {
        son[
0= son[1= -1;
        Max 
= 0;
    }

}
T[maxn*4];
int tot;

int Max(int a, int b) {
    
return a > b ? a : b;
}

int Min(int a, int b) {
    
return a < b ? a : b;
}


void Query(int root, int nx, int ny, int l, int r, int& ans) {
    
if(nx > r || ny < l || root == -1 || T[root].Max <= ans)
        
return ;
    
if(nx <= l && r <= ny) {
        ans 
= Max(ans, T[root].Max);
        
return ;
    }

    
int mid = (l + r) >> 1;
    Query(T[root].son[
0], nx, ny, l, mid, ans);
    Query(T[root].son[
1], nx, ny, mid+1, r, ans);
}


void Insert(int& root, int nPos, int l, int r, int val) {
    
if(nPos < l || nPos > r)
        
return ;
    
if(root == -1{
        root 
= tot++;
        T[root].clear();
    }

    T[root].Max 
= Max(val, T[root].Max);

    
if(l == nPos && nPos == r) {
        
return ;
    }


    
int mid = (l + r) >> 1;
    Insert(T[root].son[
0], nPos, l, mid, val);
    Insert(T[root].son[
1], nPos, mid+1, r, val);
}


int main() {
    
int i;
    
int MMin, MMax;
    
while(scanf("%d %d"&n, &d) != EOF) {
        
for(i = 0; i < n; i++{
            scanf(
"%d"&val[i]);
            
if(i) {
                MMin 
= Min(MMin, val[i]);
                MMax 
= Max(MMax, val[i]);
            }
else {
                MMin 
= val[i];
                MMax 
= val[i];
            }

        }

        tot 
= 0;
        
int root = -1;
        
int ans = 1;

        
for(i = 0; i < n; i++{
            
int l = (val[i] - d) < MMin ? MMin : (val[i] - d);
            
int r = (val[i] + d) > MMax ? MMax : (val[i] + d);
            
int MM = 0;
            Query(root, l, r, MMin, MMax, MM);
            Insert(root, val[i], MMin, MMax, MM 
+ 1);
            
if(MM + 1 > ans)
                ans 
= MM + 1;
        }


        printf(
"%d\n", ans);
    }

    
return 0;
}

posted on 2011-03-31 17:39 英雄哪里出來 閱讀(1094) 評論(0)  編輯 收藏 引用 所屬分類: 線段樹

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            极品日韩av| 欧美国产激情二区三区| 欧美1区2区3区| 久久精品国亚洲| 欧美日韩一区二区三区在线看 | 永久免费毛片在线播放不卡| 在线亚洲欧美视频| 亚洲乱码国产乱码精品精天堂| 久久精品二区亚洲w码| 香蕉亚洲视频| 国产精品乱看| 这里只有精品在线播放| 一区二区毛片| 欧美日韩国产首页在线观看| 亚洲国产日韩欧美在线99 | 国产丝袜一区二区| 亚洲一区二区三区成人在线视频精品| 日韩亚洲欧美成人一区| 久久久一区二区| 欧美3dxxxxhd| 亚洲第一二三四五区| 久久夜色精品国产欧美乱| 久久久久91| 一色屋精品视频在线看| 久久激情综合网| 欧美+亚洲+精品+三区| 亚洲国产精品久久久久秋霞不卡| 久久天天狠狠| 欧美激情一区二区三区蜜桃视频| 亚洲激情在线观看视频免费| 欧美电影电视剧在线观看| 欧美激情偷拍| 这里只有视频精品| 国产精品人成在线观看免费| 亚洲综合日韩在线| 久久久999精品视频| 一区视频在线| 欧美精品日韩三级| 一本色道久久综合亚洲精品婷婷 | 国内成人在线| 麻豆91精品| 日韩午夜三级在线| 欧美一区二区日韩一区二区| 国产主播一区二区三区| 久久阴道视频| 99国产精品久久久久久久久久| 亚洲欧洲99久久| 在线不卡a资源高清| 美日韩精品免费观看视频| 亚洲免费av观看| 久久精品91久久香蕉加勒比| 亚洲第一精品久久忘忧草社区| 欧美成人在线影院| 亚洲主播在线| 欧美黄色网络| 午夜在线观看免费一区| 在线观看日韩国产| 欧美日韩亚洲一区二区| 欧美一区二区三区视频免费播放| 亚洲电影欧美电影有声小说| 亚洲欧美另类国产| 亚洲国产老妈| 国产精品私人影院| 美女久久一区| 欧美一区二区国产| 亚洲精品国精品久久99热| 久久国产色av| 一区二区久久| 亚洲国产精品传媒在线观看| 国产精品日本欧美一区二区三区| 免费成人激情视频| 亚洲欧美日韩系列| 日韩系列在线| 亚洲国产精品传媒在线观看| 欧美一区免费视频| 一区二区欧美在线观看| 黄色日韩在线| 国产免费观看久久| 欧美日韩亚洲另类| 麻豆免费精品视频| 欧美综合激情网| 亚洲综合视频网| 99re6这里只有精品| 欧美国产第一页| 久久久久久九九九九| 新片速递亚洲合集欧美合集| 一区二区国产日产| 亚洲精品久久久久中文字幕欢迎你 | 久久久欧美精品| 亚洲欧美精品在线观看| 夜夜夜久久久| 亚洲日本中文字幕区| 激情婷婷亚洲| 国产午夜精品美女毛片视频| 国产精品美女视频网站| 欧美日韩国产天堂| 欧美国产精品专区| 美女在线一区二区| 久久夜色精品国产| 久久久久久自在自线| 久久精品国产一区二区三| 亚洲欧美日韩成人高清在线一区| 一二美女精品欧洲| 日韩亚洲精品电影| 亚洲精品黄色| 亚洲久久成人| av成人毛片| 中国亚洲黄色| 亚洲欧美成人一区二区在线电影 | 亚洲观看高清完整版在线观看| 国产一区日韩一区| 国产综合香蕉五月婷在线| 国产一区二区精品久久99| 国产裸体写真av一区二区| 国产伦精品一区二区三区视频孕妇| 国产精品久久久久久久第一福利| 国产精品久久亚洲7777| 国产精品夜色7777狼人| 国产一级揄自揄精品视频| 国内久久精品| 亚洲国产精品悠悠久久琪琪| 亚洲精品视频免费在线观看| 夜夜嗨av一区二区三区网页| 亚洲自拍都市欧美小说| 欧美一区成人| 可以免费看不卡的av网站| 欧美国产综合| 99视频国产精品免费观看| 亚洲女同精品视频| 久久久精品国产免费观看同学| 欧美粗暴jizz性欧美20| 欧美视频精品一区| 国产一区二区成人久久免费影院| 亚洲电影成人| 亚洲专区欧美专区| 久久综合狠狠综合久久综合88| 欧美高清视频| 亚洲午夜一区二区三区| 欧美一区午夜精品| 欧美国产精品日韩| 国产伦精品一区二区三区高清| 韩日欧美一区| 亚洲性色视频| 女人香蕉久久**毛片精品| 一本色道88久久加勒比精品| 欧美在线影院| 欧美日韩在线电影| 一区精品在线播放| 亚洲一区二区三区777| 六十路精品视频| 中文精品视频一区二区在线观看| 亚洲欧美日韩在线不卡| 欧美精品二区| 激情视频一区| 欧美亚洲一区| 99亚洲视频| 免费久久久一本精品久久区| 国产免费观看久久黄| 日韩午夜电影在线观看| 久久一区二区三区超碰国产精品| 艳妇臀荡乳欲伦亚洲一区| 麻豆精品精品国产自在97香蕉| 国产美女搞久久| 在线一区欧美| 亚洲国产岛国毛片在线| 欧美专区亚洲专区| 国产精品乱人伦一区二区| 亚洲精选在线| 欧美国产精品va在线观看| 久久精品二区| 国产一区二区你懂的| 亚洲欧美日韩国产一区二区三区 | 国产精品女同互慰在线看| 亚洲久色影视| 欧美激情亚洲另类| 久久久www成人免费精品| 国产欧美一区二区三区视频| 亚洲一区二区视频在线| 亚洲欧洲日本在线| 欧美a级片网站| 亚洲激情一区二区| 欧美成人国产| 麻豆精品传媒视频| 狠狠色丁香久久婷婷综合_中| 久久国产精品久久久久久久久久 | 蜜臀av性久久久久蜜臀aⅴ| 午夜视频在线观看一区二区三区 | 国产精品久久久久免费a∨| 一区二区三区成人 | 亚洲国产经典视频| 美女精品在线观看| 亚洲国产日韩综合一区| 免费h精品视频在线播放| 久久久久.com| 亚洲国产精品一区在线观看不卡| 欧美成人69av| 欧美高清免费| 亚洲图片欧美一区| 亚洲视频电影在线| 国产美女精品|