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

hdu 3627 Giant For

   這個題是對可排序數據的實時增加刪除查找,那天做比賽的時候一點都不會,想來想去覺得平衡樹可以做,但是寫平衡樹是件很難的事情。
后面知道線段數可以做,雖然數據的范圍很大,但是可以在全部讀入數據后排序再離散化,然后進行線段樹的操作,具體的代碼沒有寫。
   今天隊友在網上發現一種用map和set可以水掉這題的方法。原來,這個方法最主要的使用了map和set里面的upper_bound操作,以前
居然忘記了這個東西了。既然這樣,map和set也可以查前驅和后繼了,但是注意low_bound查到的是小于等于的鍵。這個代碼,注意是用
了一個map< int, set<int> > 集合把坐標都存起來了,進行添加刪除和查找后繼的操作。由于查找需要查找的元素是既比x大又比y大的元
素,就比較麻煩,需要循環x往后查找,但是這樣就無情的超時了。然后,有一個優化,記錄y的數目,那么當出現很大的y的時候,就不需要
查找了,然后才過了這個題。但是,數據變成很大的y對應的x很小的話,那么絕對過不了這個題了,只能用線段樹做了。
   現在覺得用map和set查找前驅和后繼確實能水掉一些題啊。

   代碼如下:
#include <map>
#include <set>
#include <stdio.h>
using namespace std;

map< intset<int> > ms;//存儲x,y
map< intset<int> >::iterator it;
map<intint> my;//存儲y的數目
set<int>::iterator msit;
int main()
{
    int nN;
    int nCase = 1;
    char szCmd[10];
    int nX, nY;
    int nTemp;

    while(scanf("%d", &nN), nN)
    {
        if (nCase > 1)
        {
            printf("\n");
        }
        
        printf("Case %d:\n", nCase++);
        ms.clear();
        my.clear();
        while (nN--)
        {
            scanf("%s", szCmd);
            scanf("%d%d", &nX, &nY);
            if (szCmd[0] == 'a')
            {
                if (my.find(nY) == my.end())
                {
                    my[nY] = 1;
                }
                else
                {
                    my[nY]++;
                }
                
                if (ms.find(nX) == ms.end())
                {
                    ms[nX].insert(nY);
                }
                else
                {
                    msit = ms[nX].find(nY);
                    if (msit == ms[nX].end())//會出現重復的數據
                    {
                        ms[nX].insert(nY);
                    }
                }
            }
            else if (szCmd[0] == 'r')
            {
                ms[nX].erase(nY);
                if(ms[nX].size() == 0)
                {
                    ms.erase(nX);
                }
                my[nY]--;
                if (my[nY] == 0)
                {
                    my.erase(nY);
                }
            }
            else if (szCmd[0] == 'f')
            {
                if (my.upper_bound(nY) == my.end())
                {
                    printf("-1\n");
                    continue;
                }
                while (true)
                {
                    it = ms.upper_bound(nX);
                    if (it == ms.end())//比nX大的不存在
                    {
                        printf("-1\n");
                        break;
                    }
                    nTemp = it->first;
                    msit = ms[nTemp].upper_bound(nY);
                    if (msit == ms[nTemp].end())//比nY大的不存在
                    {
                        nX = nTemp;
                        continue;//那么增加x,繼續往后查
                    }
                    else
                    {
                        printf("%d %d\n", nTemp, *msit);
                        break;
                    }
                }
            }
        }
    }

    return 0;
}

posted on 2012-07-26 12:22 yx 閱讀(902) 評論(0)  編輯 收藏 引用 所屬分類: 數據結構

<2013年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

導航

統計

公告

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

me

好友

同學

網友

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美激情视频在线播放| 国产视频在线观看一区二区三区 | 好吊妞**欧美| 国产中文一区二区| 国产一区二区三区网站| 国产一区二三区| 在线观看中文字幕不卡| 亚洲精品乱码久久久久久久久 | 翔田千里一区二区| 久久精品综合网| 麻豆精品传媒视频| 欧美大片18| 亚洲三级色网| 亚洲精品一二三区| 亚洲欧美日韩久久精品| 欧美亚洲尤物久久| 欧美成人亚洲成人日韩成人| 欧美精品一区二区在线观看 | 亚洲欧美国产不卡| 久久久91精品国产| 欧美日韩小视频| 国产亚洲午夜高清国产拍精品| 亚洲激情偷拍| 欧美一区二区黄| 欧美激情一区二区三区不卡| 一本色道久久综合亚洲精品按摩 | 一区二区三区四区精品| 性色av一区二区三区| 欧美国产三区| 国内外成人免费激情在线视频| 亚洲精品乱码久久久久久黑人| 欧美亚洲日本国产| 亚洲国产一区二区三区a毛片| 亚洲一区二区成人| 欧美顶级少妇做爰| 今天的高清视频免费播放成人| 一区二区三区偷拍| 美女视频黄免费的久久| 亚洲无毛电影| 欧美精品一区二区三区视频| 国内外成人免费视频| 亚洲一卡久久| 亚洲高清二区| 久久久噜噜噜久久中文字幕色伊伊| 欧美视频一区二| 91久久精品一区| 美女精品视频一区| 欧美一区二区视频网站| 欧美性猛交xxxx乱大交退制版| 亚洲欧洲一区二区在线播放| 久久影视精品| 久久精品91久久久久久再现| 国产麻豆日韩欧美久久| 午夜精品久久久久久久久久久久| 亚洲精品小视频在线观看| 欧美大片在线看| 亚洲欧洲在线视频| 亚洲高清视频中文字幕| 久久尤物电影视频在线观看| 韩国一区电影| 噜噜噜久久亚洲精品国产品小说| 欧美专区中文字幕| 日韩视频在线免费观看| 快射av在线播放一区| 欧美一级成年大片在线观看| 国产精品夫妻自拍| 亚洲综合视频网| 一区二区精品在线观看| 国产精品国产成人国产三级| 宅男噜噜噜66一区二区66| 亚洲国产日韩欧美在线动漫| 免费在线亚洲| 亚洲美女黄网| 99精品国产在热久久下载| 欧美日韩中文| 欧美一二三区在线观看| 欧美一区二区三区视频免费| 国产一区二区在线免费观看| 久久综合五月| 欧美激情视频在线免费观看 欧美视频免费一 | 六十路精品视频| 亚洲精品视频免费观看| 亚洲精品一区在线观看香蕉| 欧美性淫爽ww久久久久无| 欧美一区二区三区另类| 久久精品人人做人人爽电影蜜月 | 先锋影音网一区二区| 久久av一区二区三区漫画| 在线观看91精品国产入口| 亚洲国产精品福利| 国产精品成人v| 久久欧美中文字幕| 欧美激情免费在线| 久久av一区二区三区漫画| 久久综合婷婷| 亚洲一线二线三线久久久| 欧美影院一区| 一区二区高清| 久久超碰97人人做人人爱| 亚洲免费av电影| 欧美一区二区三区在线观看视频| 亚洲精品国产品国语在线app| 一区二区三区日韩在线观看| 尤物yw午夜国产精品视频明星 | 久久久精品国产免费观看同学| 亚洲精品一区二区三区樱花| 亚洲夜间福利| 亚洲美女一区| 久久精品视频在线播放| 亚洲香蕉在线观看| 免费成人小视频| 久久久99国产精品免费| 欧美日韩美女一区二区| 欧美成人国产| 国产伦精品一区二区三区视频孕妇| 亚洲第一精品久久忘忧草社区| 国产欧美精品在线播放| 99国产精品99久久久久久| 亚洲国产一区二区三区在线播| 艳妇臀荡乳欲伦亚洲一区| 久久综合九色九九| 亚洲国产精品第一区二区| 欧美一区二区福利在线| 久久综合亚洲社区| 亚洲欧美日韩国产成人| 亚洲视频你懂的| 日韩一区二区电影网| 一区二区欧美视频| 亚洲欧美日韩天堂一区二区| 性感少妇一区| 亚洲第一精品福利| 亚洲精品免费在线观看| 亚洲欧洲精品成人久久奇米网| 亚洲成人在线网| 亚洲校园激情| 欧美精品18videos性欧美| 国产精品麻豆va在线播放| 国产一区二区三区四区三区四 | 国内一区二区三区| 亚洲看片免费| 另类尿喷潮videofree| 亚洲一区二区免费| 欧美精品一区二区三区在线播放| 国产色综合天天综合网| 亚洲美女视频网| 男人的天堂亚洲在线| 午夜精品久久久久久久| 欧美日韩直播| 亚洲一区二区三区国产| 最新国产精品拍自在线播放| 久久精品中文字幕免费mv| 国产精品日韩在线| 亚洲少妇自拍| 亚洲婷婷综合色高清在线 | 欧美在线视频免费| 国产欧美日韩另类一区| 欧美亚洲一区二区在线观看| 在线中文字幕日韩| 亚洲国产精品久久久久秋霞影院| 欧美在线综合视频| 亚洲第一在线视频| 亚洲第一级黄色片| 国产精品久久久久久av下载红粉| 亚洲深夜福利网站| 亚洲综合久久久久| 一区二区亚洲| 亚洲欧洲日本国产| 国产欧美在线播放| 欧美成人精品影院| 国产精品国产三级国产普通话三级 | 国产精品麻豆va在线播放| 欧美一区二区在线播放| 欧美专区在线| 亚洲欧美日本伦理| 卡一卡二国产精品| 午夜精品久久| 欧美韩日亚洲| 欧美激情精品久久久久久黑人 | 久久精品一区二区三区中文字幕 | 国产真实精品久久二三区| 欧美激情一区二区三区四区| 国产精品另类一区| 日韩视频精品在线观看| 亚洲国产va精品久久久不卡综合| 一本一本a久久| 亚洲最新视频在线播放| 久久躁狠狠躁夜夜爽| 久久久噜噜噜久久狠狠50岁| 国产精品国产一区二区| 亚洲精品护士| 一本色道久久88亚洲综合88| 久久视频精品在线| 欧美视频你懂的| 在线中文字幕日韩| 亚洲综合二区| 国产欧美一区二区精品秋霞影院 | 欧美在线91| 韩国av一区二区三区四区| 久久理论片午夜琪琪电影网| 欧美国产高潮xxxx1819|