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

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ù)  更多評論   

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

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

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

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

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

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

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

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

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ù)  更多評論   

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

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

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)你對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ù)  更多評論   

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ù)  更多評論   

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

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

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ù)  更多評論   

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

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

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

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

2010-12-01 20:36 by LSK
請仔細(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>
            亚洲国产日韩欧美一区二区三区| 久久久亚洲欧洲日产国码αv| 欧美精品在线观看播放| 日韩一级黄色av| 久久人人97超碰精品888| 亚洲精品国产品国语在线app| 国产欧美精品在线播放| 欧美日韩国产在线播放网站| 美女在线一区二区| 欧美肥婆在线| 亚洲国产精品悠悠久久琪琪| 国产欧美日韩在线观看| 国产精品久久久久一区二区三区共| 美国成人毛片| 美女视频黄 久久| 免费精品99久久国产综合精品| 久久se精品一区精品二区| 欧美中文字幕在线播放| 久久久精品日韩欧美| 老牛嫩草一区二区三区日本| 亚洲一区二区在线免费观看| 亚洲黄页一区| 午夜精品一区二区三区在线播放| 久久精品国产一区二区电影| 久久蜜桃av一区精品变态类天堂| 欧美~级网站不卡| 欧美一区二区三区婷婷月色| 亚洲人成免费| 国产精品一区二区女厕厕| 欧美色123| 欧美va亚洲va香蕉在线| 午夜视频一区二区| 亚洲欧洲精品成人久久奇米网| 亚洲一区二三| 久久国产黑丝| 国产精品magnet| 亚洲国产精品一区制服丝袜| 一区二区三区不卡视频在线观看| 久久精品一二三区| 欧美二区在线| 黑人一区二区三区四区五区| 亚洲欧美国产制服动漫| 日韩一本二本av| 欧美aa在线视频| 一区二区三区四区蜜桃| 亚洲国内自拍| 欧美尤物巨大精品爽| 国产日韩精品电影| 亚洲第一精品久久忘忧草社区| 久久婷婷影院| 欧美日韩综合在线| 日韩亚洲精品在线| 免费在线观看一区二区| 亚洲欧美日韩在线观看a三区| 欧美激情精品| 亚洲无人区一区| 亚洲永久在线观看| 亚洲电影免费观看高清完整版在线| 午夜免费在线观看精品视频| 米奇777在线欧美播放| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲欧洲在线一区| 久久se精品一区二区| 欧美有码在线观看视频| 国产在线播精品第三| 欧美亚洲免费在线| 午夜精品国产精品大乳美女| 国产精品高精视频免费| 亚洲午夜精品网| 亚洲女同精品视频| 国产精品视频精品| 欧美激情久久久久久| 欧美精品久久99久久在免费线| 亚洲黄色影片| 日韩视频三区| 国产丝袜一区二区三区| 久久国产福利| 欧美黄污视频| 亚洲欧美国产毛片在线| 国产精品永久| 亚洲与欧洲av电影| 亚洲欧洲精品一区二区| 欧美777四色影视在线| 国产精品视频xxxx| 亚洲成人资源| 欧美特黄一级| 一区二区三区高清视频在线观看| 国产亚洲精品久久久久动| 欧美激情第3页| 日韩亚洲国产欧美| 一区二区三区 在线观看视频 | 亚洲精品一级| 国产精品久久久久久超碰| 亚洲性色视频| 狠狠综合久久av一区二区小说| 亚洲视频在线观看| 亚洲一级黄色片| 欧美伦理在线观看| 中文日韩欧美| 欧美日韩一区二| 一区二区三区偷拍| 亚洲欧美卡通另类91av| 欧美国产91| 午夜视频在线观看一区| 国产精品综合| 夜久久久久久| 中文有码久久| 亚洲国产精品久久久久秋霞不卡| 欧美尤物一区| 亚洲美女91| 亚洲素人在线| 欧美午夜国产| 久久国产精品久久久| 免费中文字幕日韩欧美| 亚洲久色影视| 欧美风情在线观看| 久久精品国产久精国产一老狼| 在线观看亚洲| 国产精品男女猛烈高潮激情| 亚洲欧美日韩一区在线| 91久久精品国产91性色| 99re热这里只有精品免费视频| 国产日韩1区| 国产精品成人va在线观看| 91久久精品日日躁夜夜躁欧美 | 韩日精品视频一区| 久久久久久成人| 亚洲精品一区二区三区婷婷月| 午夜精品福利电影| 日韩视频永久免费观看| 久久国产天堂福利天堂| 亚洲国产视频直播| 国产一区二区三区日韩| 欧美91大片| 蜜臀91精品一区二区三区| 久久亚洲私人国产精品va媚药| 日韩一区二区电影网| 你懂的一区二区| 亚洲精品1区2区| 欧美成人一品| 蜜臀99久久精品久久久久久软件| 亚洲黄色av| 一区二区三区毛片| 亚洲激情影院| 久久精品水蜜桃av综合天堂| 久久久久久久尹人综合网亚洲| 亚洲精品欧美极品| 亚洲午夜久久久| 亚洲精品免费在线| 91久久黄色| 亚洲一区精品视频| 欧美在线电影| 亚洲免费小视频| 久久夜色精品国产亚洲aⅴ| 久久国产精品99久久久久久老狼| 久久综合伊人77777| 欧美精品www在线观看| 国产欧美精品久久| 艳女tv在线观看国产一区| 亚洲欧洲另类| 久久久久国产精品厨房| 免费成人性网站| 一区二区三区www| 国产精品成人一区二区网站软件| 欧美香蕉视频| 亚洲精品一区二区在线观看| 日韩一二三在线视频播| 久久九九精品99国产精品| 欧美激情片在线观看| 亚洲精品一区二区在线观看| 亚洲美女免费精品视频在线观看| 亚洲美女毛片| 狼狼综合久久久久综合网| 久久精品99国产精品| 国产精品美女一区二区| 亚洲成人在线观看视频| 亚洲小说欧美另类婷婷| 欧美国产日韩视频| 久久福利资源站| 国产综合久久| 亚洲六月丁香色婷婷综合久久| 欧美剧在线免费观看网站| 亚洲国产精品久久| 久久免费观看视频| 精久久久久久| 久久精品一区四区| 欧美**人妖| 亚洲精品免费在线播放| 欧美国产国产综合| 欧美日韩不卡视频| 亚洲性线免费观看视频成熟| 在线一区欧美| 亚洲狼人综合| 午夜精品久久| 在线观看欧美精品| 亚洲精品网站在线播放gif| 国产精品日韩欧美一区| 亚洲欧美不卡| 欧美成人在线免费视频| 国产精品一区二区a|