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

oyjpArt ACM/ICPC算法程序設(shè)計(jì)空間

// I am new in programming, welcome to my blog
I am oyjpart(alpc12, 四城)
posts - 224, comments - 694, trackbacks - 0, articles - 6
Minimizing maximizer
Time Limit: 5000MS Memory Limit: 30000K
Total Submissions: 1004 Accepted: 280

Description
The company Chris Ltd. is preparing a new sorting hardware called Maximizer. Maximizer has n inputs numbered from 1 to n. Each input represents one integer. Maximizer has one output which represents the maximum value present on Maximizer's inputs.

Maximizer is implemented as a pipeline of sorters Sorter(i1, j1), ... , Sorter(ik, jk). Each sorter has n inputs and n outputs. Sorter(i, j) sorts values on inputs i, i+1,... , j in non-decreasing order and lets the other inputs pass through unchanged. The n-th output of the last sorter is the output of the Maximizer.

An intern (a former ACM contestant) observed that some sorters could be excluded from the pipeline and Maximizer would still produce the correct result. What is the length of the shortest subsequence of the given sequence of sorters in the pipeline still producing correct results for all possible combinations of input values?

Task
Write a program that:

reads a description of a Maximizer, i.e. the initial sequence of sorters in the pipeline,
computes the length of the shortest subsequence of the initial sequence of sorters still producing correct results for all possible input data,
writes the result.

Input
The first line of the input contains two integers n and m (2 <= n <= 50000, 1 <= m <= 500000) separated by a single space. Integer n is the number of inputs and integer m is the number of sorters in the pipeline. The initial sequence of sorters is described in the next m lines. The k-th of these lines contains the parameters of the k-th sorter: two integers ik and jk (1 <= ik < jk <= n) separated by a single space.

Output
The output consists of only one line containing an integer equal to the length of the shortest subsequence of the initial sequence of sorters still producing correct results for all possible data.

Sample Input

40 6
20 30
1 10
10 20
20 30
15 25
30 40

 

Sample Output

4

 

Hint
Huge input data, scanf is recommended.

Source
Central Europe 2003

//pku1769
/*
 * trival DP dp[i] = dp[j] + 1 (if there is a segment starting from a->i && a <= j)  o(n^2)
 * 考慮到轉(zhuǎn)移的時(shí)候選擇的是一段內(nèi)的最小dp值,運(yùn)用點(diǎn)樹可以解決
 */
#include <string.h>
#include <stdio.h>

const int N = 50010;
const int MAXINT = 1000000000;

int n, l;

struct ST {int i,j,m,l,r,c;} st[2*N];
int up, cnt;

void bd(int d, int x, int y) {
 st[d].i = x, st[d].j = y, st[d].m = (x+y)/2, st[d].c = MAXINT;
 if(x < y) {
  st[d].l = ++up; bd(up, x, st[d].m);
  st[d].r = ++up; bd(up, st[d].m+1, y);
 }
}

void ins(int d, int x, int c) {
 if(c < st[d].c)
  st[d].c = c;
 if(st[d].i != st[d].j) {
  if(x <= st[d].m)
   ins(st[d].l, x, c);
  else
   ins(st[d].r, x, c);
 }
}

int getmin(int d, int x, int y) {
 if(x <= st[d].i && y >= st[d].j)
  return st[d].c;
 int min = MAXINT;
 if(x <= st[d].m) {
  int now = getmin(st[d].l, x, y);
  if(now < min) min = now;
 }
 if(y > st[d].m) {
  int now = getmin(st[d].r, x, y);
  if(now < min) min = now;
 }
 return min;
}

int main() {
 int i, a, b;
 up = 0;
 scanf("%d %d ", &l, &n);
 bd(0, 1, l);
 ins(0, 1, 0);
 int max = 0;
 for(i = 0; i < n; ++i) {
  scanf("%d%d", &a, &b);
  if(a < b) {
   int min = getmin(0, a, b-1);
   ins(0, b, min+1);
  }
 }
 printf("%d\n", getmin(0, l, l));
 return 0;
}

Feedback

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2007-12-04 16:33 by je
題目沒看懂,能解釋下么?

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2007-12-05 11:47 by oyjpart
給定一個(gè)線段集,要求選擇其中一個(gè)最小的子集來覆蓋整個(gè)區(qū)域。
要求選定的子集是按照題目給的序來覆蓋。

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2008-01-18 08:46 by Littleye
很多測(cè)試好像得不到正確答案,例如:
40 4
10 30
14 29
25 30
30 40
答案應(yīng)該是2,你的程序給的是1000000000(你的初始值)
類似的例子還有不少

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2008-01-18 12:40 by oyjpart
你的樣例是無解的,沒有線段覆蓋【0,10】的區(qū)間。

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2008-01-19 02:33 by Littleye
I understand now. I don't think I understood the problem thoroughly before. Although the problem description doesn't clearly indicate that all the segments given should cover the whole segment(1,N), it is the right situation or else we can't get the right output from the maximizer. Now the problem description says that we can get the right output, so the subsequences given must cover the whole segments. Thanks a lot!

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2008-01-19 12:34 by oyjpart
you are welcome

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2008-04-18 10:44 by l-y-p
向大牛學(xué)習(xí)學(xué)習(xí),“運(yùn)用點(diǎn)樹可以解決”,好思想,很好很強(qiáng)大。但是還有一個(gè)疑點(diǎn):在DP的時(shí)候應(yīng)該從小到大進(jìn)行,但是沒發(fā)現(xiàn)你對(duì)y坐標(biāo)進(jìn)行排序就直接進(jìn)行,那如果是考慮這樣兩組數(shù)據(jù):
10 40
0 10
從10到40先確定到40的DP值為maxint+1,然后再由0~10確定10的值為1,這樣是不是有問題??你的程序我沒調(diào)試過,不曉得你是怎么處理的?

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2008-04-18 10:58 by l-y-p
果然啊,剛調(diào)試了下,直接運(yùn)行數(shù)據(jù):
40 2
10 40
0 10
結(jié)果是1000000000,不知道是我沒看清楚還是程序的bug?

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2008-04-18 12:19 by oyjpart
題目是有這樣的要求的:
要求選定的子集是按照題目給的序來覆蓋。
嘿嘿 如果我沒有理解錯(cuò)你的意思的話

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2008-04-18 22:02 by l-y-p
汗!
What is the length of the shortest subsequence of the given sequence of sorters
把排序一去掉就AC了,多謝大牛指點(diǎn),呵呵。
最先還一直在想如果可以排序的話就用不著用點(diǎn)樹了,直接貪心!

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2009-08-25 10:39 by demo
你的程序過不了zoj 2451

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2009-09-07 23:58 by oyjpart
題目是一樣的嗎

# re: pku1769 新寫的線段樹(點(diǎn)樹)模版  回復(fù)  更多評(píng)論   

2010-12-01 20:36 by LSK
請(qǐng)仔細(xì)讀題。。。ZJU哪個(gè)是multi case的
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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电影| 亚洲私人影吧| 国产农村妇女毛片精品久久莱园子| 国产日韩综合| 亚洲一区二区精品| 亚洲国产免费| 久热精品视频在线观看| 国产伦精品一区二区三区高清| 欧美乱大交xxxxx| 欧美日韩国产经典色站一区二区三区| 久久亚洲国产精品日日av夜夜| 欧美色图首页| 亚洲毛片在线| 欧美99在线视频观看| 亚洲欧美伊人| 国产精品久久97| 制服丝袜亚洲播放| 亚洲欧洲av一区二区| 亚洲人久久久| 农村妇女精品| 亚洲电影在线免费观看| 亚洲黄一区二区三区| 久久久91精品国产一区二区精品| 久久久久久久久久看片| 正在播放欧美视频| 欧美在线999| 亚洲一区成人| 国产精品久久久久久av福利软件 | 欧美精品在线免费播放| 亚洲国产成人高清精品| 久久伊伊香蕉| 久久九九久精品国产免费直播| 国产日韩欧美精品一区| 欧美一区二区免费视频| 亚洲在线免费观看| 伊人久久大香线蕉综合热线| 久久精品国产成人| 午夜一区二区三视频在线观看| 国产精品无码专区在线观看| 午夜在线一区二区| 亚洲欧美大片| 国产欧美在线观看| 久久精品三级| 久久综合久久久| 中文精品视频| 国产精品日本一区二区| 性色av一区二区三区在线观看| 亚洲一区免费网站| 国产婷婷97碰碰久久人人蜜臀| 久久精品观看| 久久久国际精品| 亚洲国产欧美不卡在线观看| 亚洲东热激情| 欧美日韩精品不卡| 亚洲欧美国产不卡| 午夜精品美女久久久久av福利| 国产一区二区三区久久精品| 亚洲精品自在久久| 日韩亚洲在线观看| 国产精品久久久久影院亚瑟| 欧美一区二区三区四区在线观看地址| 亚洲欧美制服中文字幕| 海角社区69精品视频| 欧美aa在线视频| 欧美日韩国产首页| 欧美日韩另类一区| 久久成人这里只有精品| 国产主播一区二区三区| 欧美xxx成人| 欧美日韩精品一区二区天天拍小说 | 亚洲乱码国产乱码精品精可以看| 欧美色精品在线视频| 欧美伊久线香蕉线新在线| 欧美在线亚洲在线| 91久久午夜| 亚洲视频免费在线| 一区精品在线| 欧美一区二区三区喷汁尤物| 久久久久成人精品免费播放动漫| 亚洲精品色婷婷福利天堂| 亚洲一区二区三区777| 精品白丝av| 亚洲黄页视频免费观看| 校园春色国产精品| 亚洲丰满在线| 激情综合色综合久久| 欧美大胆成人| 国产精品成人在线观看| 久久亚洲一区| 欧美日韩激情小视频| 久久精品30| 欧美黄网免费在线观看| 欧美怡红院视频一区二区三区| 久久综合99re88久久爱| 亚洲伊人一本大道中文字幕| 久久精品国产77777蜜臀| 久久躁日日躁aaaaxxxx| 国产精品私房写真福利视频| 女人天堂亚洲aⅴ在线观看| 99在线精品视频| 亚洲视频专区在线| 一区在线免费| 一区二区三区久久久| 悠悠资源网久久精品| 一区二区电影免费观看| 一区二区在线观看视频在线观看| 亚洲美女免费精品视频在线观看| 国产午夜精品理论片a级探花 | 一区二区三区色| 一区精品在线| 亚洲一区日韩| 日韩视频在线一区| 亚洲国产精品国自产拍av秋霞 | 久久先锋影音| 午夜久久久久| 欧美激情精品久久久久久蜜臀| 欧美一区二视频| 欧美日韩免费观看一区| 亚洲欧美在线x视频| 欧美成人国产va精品日本一级| 欧美在线一二三区| 欧美日韩亚洲一区二区| 欧美电影免费观看| 国产亚洲在线观看| 国产精品国产自产拍高清av王其| 美女主播视频一区| 国产精品亚洲网站| 亚洲综合第一页| 亚洲女性裸体视频| 在线一区欧美| 欧美不卡一区| 蜜臀a∨国产成人精品| 国产欧美精品国产国产专区| 亚洲精品影视| 亚洲精品黄色| 巨乳诱惑日韩免费av| 久久久久一本一区二区青青蜜月| 国产精品第一区| 亚洲日本久久| 亚洲精品免费看| 久久中文欧美| 麻豆国产精品va在线观看不卡 | 午夜精彩国产免费不卡不顿大片| 欧美一区二区三区男人的天堂 | 99精品热视频只有精品10| 亚洲精品日韩综合观看成人91| 乱人伦精品视频在线观看| 久久夜色精品国产亚洲aⅴ| 国产欧美精品日韩精品| 亚洲夜间福利| 午夜精品美女久久久久av福利| 日韩亚洲一区在线播放| 国产一区在线观看视频| 亚洲欧美精品一区| 午夜国产精品视频| 国产精品高潮在线| 亚洲手机视频| 校园激情久久| 国产女人精品视频| 亚洲精品社区| 久久精品视频一| 久久综合给合久久狠狠色 | 欧美日韩国产a| 91久久夜色精品国产九色| 亚洲人成人99网站| 欧美成人亚洲成人| 久久国内精品自在自线400部| 国产精品一国产精品k频道56| 亚洲一区二区三| 欧美在线观看网址综合| 国产日韩欧美在线视频观看| 欧美亚洲一区在线| 久久久久久9999| 精品成人国产| 麻豆国产精品一区二区三区| 亚洲电影在线观看| 欧美日韩三区| 老色鬼精品视频在线观看播放| 狠狠入ady亚洲精品经典电影| 欧美一区二区三区精品| 久久一区亚洲| 亚洲经典自拍| 欧美日韩ab| 亚洲图片欧洲图片av| 久久成人这里只有精品| 黄色成人av| 欧美成人免费全部观看天天性色| 亚洲精品久久久久久下一站| 亚洲一区二区三区中文字幕在线| 国产精品毛片高清在线完整版 | 国产精品人人做人人爽人人添|