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

隨筆 - 87  文章 - 279  trackbacks - 0
<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

潛心看書研究!

常用鏈接

留言簿(19)

隨筆分類(81)

文章分類(89)

相冊

ACM OJ

My friends

搜索

  •  

積分與排名

  • 積分 - 220433
  • 排名 - 118

最新評論

閱讀排行榜

評論排行榜

Feed the dogs
Time Limit:6000MS? Memory Limit:65536K
Total Submit:1387 Accepted:222

Description
Wind loves pretty dogs very much, and she has n pet dogs. So Jiajia has to feed the dogs every day for Wind. Jiajia loves Wind, but not the dogs, so Jiajia use a special way to feed the dogs. At lunchtime, the dogs will stand on one line, numbered from 1 to n, the leftmost one is 1, the second one is 2, and so on. In each feeding, Jiajia choose an inteval[i,j], select the k-th pretty dog to feed. Of course Jiajia has his own way of deciding the pretty value of each dog. It should be noted that Jiajia do not want to feed any position too much, because it may cause some death of dogs. If so, Wind will be angry and the aftereffect will be serious. Hence any feeding inteval will not contain another completely, though the intervals may intersect with each other.

Your task is to help Jiajia calculate which dog ate the food after each feeding.

Input
The first line contains n and m, indicates the number of dogs and the number of feedings.

The second line contains n integers, describe the pretty value of each dog from left to right. You should notice that the dog with lower pretty value is prettier.

Each of following m lines contain three integer i,j,k, it means that Jiajia feed the k-th pretty dog in this feeding.

You can assume that n<100001 and m<50001.

Output
Output file has m lines. The i-th line should contain the pretty value of the dog who got the food in the i-th feeding.

Sample Input

7 2
1 5 2 6 3 7 4
1 5 3
2 7 1

Sample Output

3
2

Source
POJ Monthly--2006.02.26,zgl & twb

#include? < iostream >
#include?
< algorithm >
using ? namespace ?std;

const ? int ?MAXN? = ? 100001 ;
const ? int ?MAXM? = ? 50001 ;

struct ?PosData
{
????
int ?b,?e;
????
int ?k;
????
int ?index;
}
;

struct ?Adata
{
????
int ?index;
????
int ?incode;
????
int ?data;
}
;

Adata?a[MAXN];
int ?aa[MAXN];
PosData?d[MAXM];
int ?f[ 3 * (MAXN + 1 )]? = ? { 0 } ;
int ?n,?m;
int ? out [MAXM];

inline?
int ?inorder(PosData?x,?PosData?y)
{
????
return ?x.b? < ?y.b;
}


inline?
int ?inorder2(Adata?x,?Adata?y)
{
????
return ?x.data? < ?y.data;
}


inline?
int ?inorder3(Adata?x,?Adata?y)
{
????
return ?x.index? < ?y.index;
}


void ?initTree()
{
????memset(f,?
0 ,? sizeof (f));
}


void ?insertTree( int ?v)
{
????
int ?l? = ? 1 ,?r? = ?MAXN;
????
int ?c? = ? 1 ;
????
int ?mid;
????
while ?(l? < ?r)
????
{
????????mid?
= ?(l? + ?r)? / ? 2 ;
????????f[c]
++ ;
????????
if ?(v? > ?mid)
????????
{
????????????c?
= ?c? * ? 2 ? + ? 1 ;
????????????l?
= ?mid? + ? 1 ;
????????}

????????
else
????????
{
????????????c?
= ?c? * ? 2 ;
????????????r?
= ?mid;
????????}

????}

????f[c]
++ ;
}


void ?delTree( int ?v)
{
????
int ?l? = ? 1 ,?r? = ?MAXN;
????
int ?c? = ? 1 ;
????
int ?mid;
????
while ?(l? < ?r)
????
{
????????mid?
= ?(l? + ?r)? / ? 2 ;
????????f[c]
-- ;
????????
if ?(v? > ?mid)
????????
{
????????????c?
= ?c? * ? 2 ? + ? 1 ;
????????????l?
= ?mid? + ? 1 ;
????????}

????????
else
????????
{
????????????c?
= ?c? * ? 2 ;
????????????r?
= ?mid;
????????}

????}

????f[c]
-- ;
}


int ?searchTree( int ?k)
{
????
int ?l? = ? 1 ,?r? = ?MAXN;
????
int ?c? = ? 1 ;
????
int ?mid;
????
while ?(l? < ?r)
????
{
????????mid?
= ?(l? + ?r)? / ? 2 ;
????????
if ?(k? <= ?f[ 2 * c])
????????
{
????????????c?
= ? 2 ? * ?c;
????????????r?
= ?mid;
????????}

????????
else
????????
{
????????????k?
-= ?f[ 2 * c];
????????????c?
= ? 2 ? * ?c? + ? 1 ;
????????????l?
= ?mid? + ? 1 ;
????????}

????}

????
return ?l;
}


int ?main()
{
????
int ?i,?j;

????scanf(
" %d%d " ,? & n,? & m);

????
for ?(i = 1 ;?i <= n;?i ++ )
????
{
????????scanf(
" %d " ,? & a[i].data);
????????a[i].index?
= ?i;
????}

????sort(a
+ 1 ,?a + n + 1 ,?inorder2);
????
// 離散化
???? for ?(i = 1 ;?i <= n;?i ++ )
????
{
????????a[i].incode?
= ?i;
????????aa[i]?
= ?a[i].data;
????}

????sort(a
+ 1 ,?a + n + 1 ,?inorder3);

????
for ?(i = 0 ;?i < m;?i ++ )
????
{
????????scanf(
" %d%d%d " ,? & d[i].b,? & d[i].e,? & d[i].k);
????????d[i].index?
= ?i;
????}

????sort(d,?d
+ m,?inorder);

????
for ?(j = d[ 0 ].b;?j <= d[ 0 ].e;?j ++ )
????????insertTree(a[j].incode);
????
out [d[ 0 ].index]? = ?aa[searchTree(d[ 0 ].k)];

????
for ?(i = 1 ;?i < m;?i ++ )
????
{
????????
if ?(d[i - 1 ].e? < ?d[i].b)
????????
{
????????????
for ?(j = d[i - 1 ].b;?j <= d[i - 1 ].e;?j ++ )
????????????????delTree(a[j].incode);
????????????
for ?(j = d[i].b;?j <= d[i].e;?j ++ )
????????????????insertTree(a[j].incode);
????????}

????????
else
????????
{
????????????
for ?(j = d[i - 1 ].b;?j < d[i].b;?j ++ )
????????????
{
????????????????delTree(a[j].incode);
????????????}

????????????
for ?(j = d[i - 1 ].e + 1 ;?j <= d[i].e;?j ++ )
????????????
{
????????????????insertTree(a[j].incode);
????????????}

????????}

????????
????????
out [d[i].index]? = ?aa[searchTree(d[i].k)];
????}


????
for ?(i = 0 ;?i < m;?i ++ )
????????printf(
" %d\n " ,? out [i]);
????

????
return ? 0 ;
}
posted on 2006-09-13 23:40 閱讀(1936) 評論(6)  編輯 收藏 引用 所屬分類: ACM題目

FeedBack:
# re: pku(2761)離散化+線段樹 2007-03-28 18:58 過客
怎么注釋這么少!!!!  回復  更多評論
  
# re: pku(2761)離散化+線段樹 2007-08-15 19:06 lilu03555
最近在學線段樹,今天用遞歸寫了一個線段樹,結果是錯的,實在是臺不爽了。。
看了你寫的線段樹,真的是他開眼界。。
佩服佩服。。  回復  更多評論
  
# re: pku(2761)離散化+線段樹 2007-08-18 11:42 wcn(wengjiaxiang86@163.com)
pku2104差不多的一道題,
對k進行變換,
d[i].k=d[i].e-d[i]-b+2-d[i].k;
變成求第k大的元素.你的程序似乎連sample都不對呀?
請教一下....  回復  更多評論
  
# re: pku(2761)離散化+線段樹 2007-08-18 21:07 wcn(wengjiaxiang86@163.com)
呃,是我看錯了,不需要變換...
不過在判區間的時候得稍微改動一下,
不過超時了。  回復  更多評論
  
# re: pku(2761)離散化+線段樹 2007-08-18 21:09 wcn(wengjiaxiang86@163.com)
呃,是我看錯了,
不需要做變換。只是程序在判區間重疊的時候,得再加一個包含.
不過這樣2104還是過不去,超時了,繼續請教?  回復  更多評論
  
# re: pku(2761)離散化+線段樹 2008-03-19 20:36 l-y-p
強大,向牛人學習了……  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              国产欧美三级| 欧美一区激情视频在线观看| 亚洲国产精品成人va在线观看| 久久高清一区| 久久不射中文字幕| 亚洲国产天堂网精品网站| 亚洲欧美在线aaa| 在线观看视频一区| 亚洲美女中出| 亚洲午夜久久久久久久久电影院| 国产精品夜夜夜| 免费亚洲一区二区| 久久九九热re6这里有精品| 99在线视频精品| 久久成人免费| 日韩视频免费在线| 亚洲三级性片| 亚洲女人天堂成人av在线| 欧美一区二区三区免费在线看| 午夜一级久久| 免费欧美网站| 99热这里只有成人精品国产| 一区二区三区四区五区精品视频 | 亚洲欧美日韩精品久久久久| 午夜精品www| 欧美国产先锋| 国产亚洲欧美日韩在线一区 | 99精品视频免费观看| 久久婷婷激情| 国产精品久线观看视频| 91久久精品一区| 亚洲免费在线精品一区| 欧美高清自拍一区| 久久精品国产亚洲5555| 国产精品久久久久久久久久直播 | 久久久久久综合网天天| 亚洲日本乱码在线观看| 久久福利一区| 极品裸体白嫩激情啪啪国产精品| 中文无字幕一区二区三区| 欧美va亚洲va香蕉在线| 欧美在线三级| 国产伊人精品| 欧美不卡福利| 欧美日韩在线播放三区四区| 午夜精品久久久久99热蜜桃导演| 久久精品99国产精品日本| 国产欧美二区| 久久一区二区三区超碰国产精品| 亚洲欧美日韩精品久久奇米色影视| 国产精品久久久久久久久免费桃花| 久久久久国产精品www| 欧美精品久久久久久| 在线亚洲精品| 久久久久99| 亚洲视频在线观看| 亚洲在线观看免费| 国精品一区二区| 一本色道精品久久一区二区三区| 国产精品黄色| 99精品免费| 一区二区av| 久久久久久久久伊人| 日韩性生活视频| 久久久视频精品| 亚洲精品美女久久久久| 午夜精品视频在线观看一区二区| 国产精品久久久久久久一区探花| 亚洲视频1区| 亚洲欧美久久| 久久久中精品2020中文| 狂野欧美激情性xxxx| 欧美一区二区三区免费观看| 欧美资源在线| 亚洲麻豆av| 亚洲青涩在线| 国产日韩一区二区三区在线| 亚洲欧美在线播放| **欧美日韩vr在线| 午夜精品久久久久久久久久久 | 精品动漫3d一区二区三区免费| av成人免费在线观看| 老鸭窝91久久精品色噜噜导演| 亚洲深夜福利网站| 久久综合一区| 国产一区再线| 久久久久久久综合色一本| 亚洲欧美视频在线观看视频| 国产精品久久九九| 亚洲欧美精品伊人久久| 亚洲图片欧洲图片av| 欧美午夜精品久久久久久人妖| 一本色道久久综合亚洲精品按摩| 亚洲国产日韩欧美| 欧美人与性动交α欧美精品济南到| 影音先锋久久资源网| 免费欧美日韩国产三级电影| 久久综合电影一区| 亚洲高清视频在线| 欧美激情第三页| 欧美黄免费看| 亚洲午夜视频在线| 亚洲欧美日韩中文播放| 一区二区三区在线高清| 欧美亚洲尤物久久| 欧美α欧美αv大片| 亚洲无线视频| 性xx色xx综合久久久xx| 亚洲国产欧美日韩| 洋洋av久久久久久久一区| 国产伦精品一区二区三区免费迷| 久久久97精品| 欧美国产日本高清在线| 亚洲国产精品专区久久| 欧美在线高清| 亚洲精品免费在线播放| 一区二区三区www| 国产亚洲午夜高清国产拍精品| 欧美成人亚洲成人| 国产精品久久久91| 欧美激情按摩在线| 国产日韩成人精品| 在线观看国产一区二区| 欧美成人午夜77777| 裸体歌舞表演一区二区| 性亚洲最疯狂xxxx高清| 久久亚洲不卡| 一区二区欧美日韩| 午夜天堂精品久久久久| 亚洲看片免费| 欧美在线关看| 国产精品99久久久久久有的能看| 午夜综合激情| 在线视频日本亚洲性| 欧美中文字幕视频在线观看| 亚洲一区精品视频| 久久夜色精品亚洲噜噜国产mv| 亚洲特色特黄| 欧美成人精品| 欧美成人一区二区三区| 国产视频一区在线观看| 亚洲欧洲三级| 国产区二精品视| 欧美尤物一区| 久久久久久9999| 欧美三级在线| 亚洲黄色高清| 在线日韩av片| 欧美中文字幕在线| 久久高清国产| 国产一区二区日韩精品欧美精品| 亚洲高清不卡在线观看| 亚洲日本va午夜在线电影| 欧美在线亚洲一区| 鲁大师影院一区二区三区| 欧美日韩国产黄| 亚洲精品日韩综合观看成人91| 黄色亚洲精品| 久久人人爽人人爽爽久久| 欧美一区二区三区四区在线观看 | 国产精品美女久久久免费| 亚洲欧美999| 欧美在线|欧美| 亚洲激情视频在线| 免费不卡中文字幕视频| 免费视频一区| 女人香蕉久久**毛片精品| 亚洲日韩欧美一区二区在线| 久久久久欧美精品| 亚洲精品激情| 亚洲视频播放| 狠狠噜噜久久| 美女亚洲精品| 亚洲永久免费av| 国产日产欧产精品推荐色 | 久久夜色精品国产| 国产伦精品一区二区| 久久欧美中文字幕| 欧美日韩一区二区免费视频| 美女视频黄免费的久久| 久久躁狠狠躁夜夜爽| 欧美日韩国产精品一区| 国产日韩在线一区| 亚洲欧洲精品一区| 亚洲在线一区二区三区| 久久久久久久一区二区| 久久av二区| 欧美精品一区二区三区蜜桃 | 久久中文久久字幕| 欧美精品入口| 久久青草欧美一区二区三区| 午夜亚洲福利| 亚洲免费观看| 国产日韩一区二区三区| 欧美日韩一区在线| 亚洲人成在线免费观看| 欧美大胆成人| 99热免费精品在线观看| 一区二区三区在线视频免费观看| 午夜宅男欧美|