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

gzwzm06

  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  1 隨筆 :: 52 文章 :: 17 評論 :: 0 Trackbacks
兩種方法:直接模擬、線段樹
由于編碼菜,程序一大堆bug,下載測試數(shù)據(jù),調(diào)試了兩個(gè)鐘頭,才搞
太無語了。。。
  1#include <cstdio>
  2
  3const int SIZE = 50001;
  4
  5struct ROOM
  6{
  7    int start;
  8    int size;
  9    struct ROOM *pre, *next;
 10}
head, *tail, room[SIZE];
 11
 12int N, M, gPos, gRSize;
 13
 14void Init()
 15{
 16    gPos = gRSize = 1;
 17    head.next = &room[0];
 18    tail = &room[0];
 19    room[0].start = 1;
 20    room[0].size = N;
 21    room[0].pre = &head;
 22    room[0].next = NULL;
 23}

 24
 25void Del(ROOM *ptr, const int& size)
 26{
 27    if ( ptr->size == size )
 28    {
 29        ptr->pre->next = ptr->next;
 30        if( ptr->next )
 31            ptr->next->pre = ptr->pre;
 32        else
 33            tail = ptr->pre;
 34    }

 35    else {
 36        ptr->size = ptr->size - size;
 37        ptr->start = ptr->start + size;
 38    }

 39}

 40
 41void Add(const int& st, const int& size)
 42{
 43    int end = st + size ;
 44    ROOM *ptr = head.next;
 45
 46    tail->next = &room[gPos];
 47    room[gPos].pre = tail;
 48    room[gPos].start = st;
 49    room[gPos].size = size;
 50    room[gPos].next = NULL;
 51    tail = &room[gPos];
 52    gPos++;
 53
 54    while ( ptr && ptr != tail)
 55    {
 56        if ( (ptr->start + ptr->size) == tail->start )
 57        {
 58            tail->start = ptr->start;
 59            tail->size += ptr->size;
 60            Del( ptr, ptr->size );
 61        }

 62        else if ( ptr->start == end )
 63        {
 64            tail->size += ptr->size;
 65            Del( ptr, ptr->size );
 66        }

 67        else if ( ptr->start >= tail->start && (ptr->start + ptr->size) <= (tail->start + tail->size) )
 68            Del( ptr, ptr->size );
 69        else if ( ptr->start >= tail->start && ptr->start < (tail->start + tail->size) )
 70        {
 71            tail->size += (ptr->start + ptr->size - tail->start - tail->size);
 72            Del( ptr, ptr->size );
 73        }

 74        else if ( ptr->start <= tail->start && (ptr->start + ptr->size) >= (tail->start + tail->size) )
 75        {
 76            tail->start = ptr->start;
 77            tail->size = ptr->size;
 78            Del( ptr, ptr->size );
 79            break;
 80        }

 81        else if ( ptr->start <= tail->start && (ptr->start + ptr->size) > tail->start )
 82        {
 83            tail->size += (tail->start - ptr->start);
 84            tail->start = ptr->start;    
 85            Del( ptr, ptr->size );
 86        }

 87        ptr = ptr->next;
 88    }

 89
 90}

 91
 92int Find(const int& size)
 93{
 94    int st = 0;
 95    ROOM *= head.next, *tmp;
 96
 97    while ( p )
 98    {
 99        if ( p->size >= size && (st == 0 || st > p->start) )
100        {
101            st = p->start;
102            tmp = p;
103        }

104        p = p->next;
105    }

106
107    if ( st == 0 )
108        return 0;
109
110    Del(tmp, size);
111
112    return st;
113}

114
115int main()
116{
117//    freopen("1.txt", "r", stdin);
118
119    int i, num, s, d;
120
121    scanf("%d %d"&N, &M);
122
123    Init();
124
125    for ( i = 0; i < M; ++i )
126    {
127        scanf("%d"&num);
128
129        if ( num == 1 )
130        {
131            scanf("%d"&s);
132            printf("%d\n", Find(s));
133
134        }

135        else {
136            scanf("%d %d"&s, &d);
137            Add( s, d );
138        }

139    }

140    return 0;
141}
posted on 2009-03-22 15:58 閱讀(364) 評論(0)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)結(jié)構(gòu)
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲免费网址| 欧美日韩999| 国产精品久久精品日日| 久久精品动漫| 久久久999精品视频| 999在线观看精品免费不卡网站| 99这里只有久久精品视频| 国语精品中文字幕| 亚洲每日在线| 日韩视频在线免费| 久久亚洲二区| 久久精品国产999大香线蕉| 噜噜噜噜噜久久久久久91| 欧美一区观看| 欧美日韩在线一二三| 亚洲黄色成人| 亚洲国产岛国毛片在线| 久久成人一区二区| 欧美激情在线免费观看| 久久久99爱| 国产精品无码永久免费888| 亚洲国产裸拍裸体视频在线观看乱了中文| 国产精品视频成人| 一本色道88久久加勒比精品 | 久久久xxx| 亚洲一区二区成人在线观看| 羞羞视频在线观看欧美| 欧美精品在欧美一区二区少妇| 久久久www| 国产欧美精品日韩区二区麻豆天美 | 伊人成人开心激情综合网| 亚洲一区bb| 艳女tv在线观看国产一区| 欧美激情 亚洲a∨综合| 欧美成人国产| 精品动漫3d一区二区三区| 久久久久久久一区二区| 老牛国产精品一区的观看方式| 国内成+人亚洲+欧美+综合在线| 亚洲视频一二区| 亚洲性xxxx| 国产免费观看久久黄| 久久久噜噜噜久噜久久| 亚洲福利视频专区| 欧美韩日一区二区三区| 99re这里只有精品6| 亚洲一区二区在| 国产精品精品视频| 亚洲精品在线免费观看视频| 亚洲综合日韩中文字幕v在线| 国产精品夫妻自拍| 亚洲国产综合视频在线观看| 日韩小视频在线观看| 国产拍揄自揄精品视频麻豆| 久久一区二区三区四区| 亚洲黄色一区| 亚洲一区在线免费观看| 久久久噜噜噜久噜久久 | 久久久精品动漫| 国产日韩欧美日韩| 欧美ab在线视频| 亚洲系列中文字幕| 免费亚洲电影| 性做久久久久久免费观看欧美| 亚洲精品视频中文字幕| 国产精品伦子伦免费视频| 久久精品水蜜桃av综合天堂| 亚洲国产精品专区久久| 午夜精品久久久久久久99热浪潮 | 亚洲狼人精品一区二区三区| 国产精品一二三视频| 欧美中文字幕在线播放| 亚洲国产婷婷综合在线精品 | 久久综合九色综合欧美狠狠| 亚洲激情成人| 国产精品视频专区| 欧美成人精品一区二区| 亚洲精品一区在线观看| 亚洲欧美日韩一区二区在线| 久久资源av| 亚洲精品日韩激情在线电影 | 国产精品一区二区在线观看| 久久久综合精品| 欧美在线视频网站| 中文精品一区二区三区| 在线欧美影院| 国产女同一区二区| 欧美国产日韩亚洲一区| 欧美福利一区二区| 久久成人18免费网站| 99精品热6080yy久久| 精品成人在线| 国产精品乱人伦中文| 欧美精品aa| 老司机成人网| 久久免费高清视频| 久久全国免费视频| 久久er99精品| 老**午夜毛片一区二区三区| 中国成人在线视频| 一本色道久久综合| 精品999在线播放| 国产亚洲视频在线| 国产精品人成在线观看免费| 欧美色综合网| 嫩草成人www欧美| 久久成人免费日本黄色| 亚洲精品一区二区三区在线观看| 亚洲国产欧美日韩精品| 亚洲精品偷拍| 中国女人久久久| 老司机aⅴ在线精品导航| 美女日韩在线中文字幕| 欧美淫片网站| 亚洲国产精品一区二区尤物区| 国产精品久久午夜夜伦鲁鲁| 欧美精品成人91久久久久久久| 欧美在线亚洲在线| 午夜精品在线视频| 亚洲网站在线观看| 中日韩高清电影网| 99这里只有精品| 日韩视频精品在线观看| 亚洲午夜91| 亚洲一区精品在线| 亚洲欧美激情四射在线日| 亚洲一区欧美激情| 亚洲欧美一区二区三区极速播放| 亚久久调教视频| 久久久成人网| 欧美日韩一二三四五区| 欧美jizzhd精品欧美巨大免费| 免费不卡中文字幕视频| 欧美大片一区| 国产精品极品美女粉嫩高清在线| 欧美激情在线观看| 国产一区二区三区的电影| 亚洲国产成人高清精品| 亚洲肉体裸体xxxx137| 免费观看成人鲁鲁鲁鲁鲁视频 | 欧美亚洲三区| 亚洲天堂av在线免费观看| 国产麻豆日韩欧美久久| 欧美怡红院视频| 欧美在线视频二区| 在线观看日韩av先锋影音电影院| 美女亚洲精品| 欧美肥婆在线| 欧美一级免费视频| 久久男女视频| 中日韩男男gay无套| 欧美影视一区| 最新国产の精品合集bt伙计| 一区二区高清在线观看| 国产欧美精品一区二区色综合| 免费久久久一本精品久久区| 欧美日本三区| 久久久久久久91| 欧美日韩理论| 久久久夜夜夜| 欧美日韩在线播放一区| 久久av红桃一区二区小说| 欧美国产三区| 久久精品亚洲乱码伦伦中文| 欧美精品免费播放| 久久精品亚洲一区| 国产精品久久久久aaaa| 亚洲欧美中日韩| 欧美电影电视剧在线观看| 欧美男人的天堂| 久热成人在线视频| 欧美四级伦理在线| 欧美高清不卡在线| 国产精品国产三级国产专播品爱网 | 欧美不卡视频| 99天天综合性| 久久偷看各类wc女厕嘘嘘偷窃| 在线综合+亚洲+欧美中文字幕| 久久久av水蜜桃| 午夜精品国产| 欧美香蕉视频| 亚洲精品一区久久久久久| 亚洲大胆人体在线| 性色av一区二区三区在线观看| 日韩亚洲在线观看| 免费在线一区二区| 欧美a级一区| 黄色成人91| 亚洲一区在线观看视频| 亚洲视频 欧洲视频| 欧美激情一区二区在线| 欧美国内亚洲| 91久久久国产精品| 美日韩在线观看| 美女免费视频一区| 在线精品视频一区二区三四| 久久国产手机看片| 久久综合电影一区| 亚洲成人资源| 久久久久综合网|