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

糯米

TI DaVinci, gstreamer, ffmpeg
隨筆 - 167, 文章 - 0, 評論 - 47, 引用 - 0
數(shù)據(jù)加載中……

POJ 1733 Parity game 牛題 -> 并查集+hash

思路:

這題是道好題!
假比確定了 [2, 4]、[5, 6]、[7, 8] 的奇偶性
[4, 5] 的奇偶性無法得知
[2, 6] 的奇偶性是知道的
所以只有詢問的區(qū)間符合以下要求:
1. 頭部和某個已知區(qū)間的頭部重合
2. 尾部和某個已知區(qū)間的尾部重合
3. 區(qū)間內(nèi)每一段都是已知的
才能得出結(jié)論

我只想到這一步,然后用鏈表寫了一遍,TLE 了。上網(wǎng)搜解題報告,看到“并查集”三字,恍然大悟。嗎的太牛逼了。

我們把首尾相接的多個已知區(qū)間歸為一類。
將這多個區(qū)間的尾部的點歸在同一個集合中。
它們的父親就是最左邊區(qū)間頭部。
它們的權(quán)值就是從左邊區(qū)間頭部的到自己的這段區(qū)間的奇偶性。

插入?yún)^(qū)間 [i, j] 的時候,首先查找 i, j 對應(yīng)的父親。就是 find 操作。
如果它們的父親相同,則表明它們處在同一個段的多個已知區(qū)間中。
那么 i, j 的權(quán)值相減,就很容易得出 [i, j] 的奇偶性了。
如果它們的父親不同,則需要將 i, j 分別對應(yīng)的區(qū)間段關(guān)聯(lián)起來。也就是 union 操作。
這時候要注意判斷 i, j 父親的位置先后。因為這個 WA 了一次。

由于節(jié)點的位置分得很散,用 hash 存放。

#include <stdio.h>

#define HASH_SIZE (1 << 18)
#define NODES_NR 65536

struct node {
    
struct node *root, *next;
    
int idx, val;
}
;

struct node *hash[HASH_SIZE], nodes[NODES_NR];
int nodes_cnt;

inline 
void find(struct node *t)
{
    
static struct node *stk[NODES_NR];
    
int i;

    
for (i = 0; t->root != t; t = t->root)
        stk[i
++= t;
    
for (i--; i >= 0; i--{
        stk[i]
->val += stk[i]->root->val;
        stk[i]
->root = t;
    }

}


inline 
struct node *insert(int idx)
{
    
int h;
    
struct node *t;

    h 
= idx & (HASH_SIZE - 1);
    
for (t = hash[h]; t; t = t->next) {
        
if (t->idx == idx)
            
break;
    }

    
if (!t) {
        t 
= &nodes[nodes_cnt++];
        t
->root = t;
        t
->idx = idx;
        t
->next = hash[h];
        hash[h] 
= t;
    }

    
return t;
}


inline 
int solve(int start, int end, int val)
{
    
struct node *a, *b;

    a 
= insert(start);
    b 
= insert(end);
    find(a);
    find(b);

    
if (a->root == b->root)
        
return ((b->val - a->val) & 1== val;

    val 
-= b->val;
    val 
+= a->val;
    a 
= a->root;
    b 
= b->root;
    
if (a->idx < b->idx) {
        b
->root = a;
        b
->val = val;
    }
 else {
        a
->root = b;
        a
->val = -val;
    }


    
return 1;
}


int main()
{
    
int n, i, x, a, b;
    
char str[16];

    freopen(
"e:\\test\\in.txt""r", stdin);

    scanf(
"%d%d"&n, &x);
    
for (i = 0; i < x; i++{
        scanf(
"%d%d%s"&a, &b, str);
        
if (!solve(a, b + 1, str[0== 'o'))
            
break;
    }

    printf(
"%d\n", i);

    
return 0;
}



posted on 2010-04-22 21:38 糯米 閱讀(889) 評論(0)  編輯 收藏 引用 所屬分類: POJ

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            牛夜精品久久久久久久99黑人| 欧美国产综合| 国产精品一区一区三区| 亚洲欧美中文在线视频| 久久精品亚洲热| 在线播放亚洲一区| 欧美午夜一区二区三区免费大片| 久久久久九九九九| 亚洲欧美另类在线观看| 在线亚洲欧美专区二区| 一区二区久久久久| 中文欧美日韩| 亚洲女同精品视频| 亚洲欧美日韩一区| 欧美亚洲尤物久久| 久久av资源网站| 久久九九99视频| 欧美成人亚洲成人| 欧美夫妇交换俱乐部在线观看| 久久婷婷激情| 欧美深夜福利| 一区二区在线观看视频在线观看| 国模私拍一区二区三区| 国产欧美日韩视频在线观看 | 亚洲高清免费视频| 亚洲欧美福利一区二区| 国产精品男女猛烈高潮激情| 亚洲精品一区中文| 欧美一级午夜免费电影| 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲午夜电影网| 亚洲美女中出| 久久手机免费观看| 欧美亚洲免费高清在线观看| 久久久人成影片一区二区三区| 欧美大色视频| 黄色影院成人| 久久久久国产精品www| 亚洲欧洲偷拍精品| 老牛嫩草一区二区三区日本| 国产日韩精品一区二区三区| av成人免费观看| 亚洲人成高清| 欧美日韩国产va另类| 亚洲精品国产精品国自产观看浪潮| 欧美伊人久久久久久久久影院 | 欧美不卡福利| 久久久天天操| 亚洲第一主播视频| 亚洲国产精品ⅴa在线观看| 久久综合色播五月| 国产人成精品一区二区三| 一区二区三区久久久| 一本久久精品一区二区| 欧美视频一区二区三区四区| 亚洲女爱视频在线| 久久久久久一区二区| 久久青青草原一区二区| 亚洲欧美日韩综合aⅴ视频| 国产精品日韩精品欧美在线| 午夜天堂精品久久久久| 久久夜色精品国产亚洲aⅴ| 亚洲电影专区| 亚洲欧美日韩国产综合精品二区| 国产永久精品大片wwwapp| 久久一区亚洲| 香蕉成人久久| 久久久久国产精品一区| 亚洲特级毛片| 免费永久网站黄欧美| 亚洲一区二区三区视频播放| 中文国产成人精品| 永久免费视频成人| 一区二区激情视频| 国产一本一道久久香蕉| 亚洲欧美在线免费| 欧美一区二区在线观看| 9色精品在线| 久久久国产精品亚洲一区 | 亚洲日本免费电影| 国产综合欧美| 午夜在线精品偷拍| 亚洲欧美色婷婷| 国产精品久久久久毛片大屁完整版 | 亚洲国产免费| 麻豆freexxxx性91精品| 亚洲高清视频一区| 欧美成人一区二区三区在线观看| 久久久久久久高潮| 一区在线观看| 欧美精品日韩一本| 国产人成精品一区二区三| 亚洲女同在线| 亚洲激情午夜| 久久本道综合色狠狠五月| 国产亚洲高清视频| 欧美顶级艳妇交换群宴| 日韩一级片网址| 久久精品国产清自在天天线| 尤物99国产成人精品视频| 欧美激情在线| 久久精品91久久久久久再现| 91久久精品美女| 亚洲综合另类| 亚洲毛片一区| 在线观看国产日韩| 欧美手机在线视频| 久久性天堂网| 欧美一区二区三区播放老司机| 欧美高清视频www夜色资源网| 亚洲免费中文| 久久久久久噜噜噜久久久精品| 国产亚洲一区在线| 欧美多人爱爱视频网站| 亚洲精品男同| 亚洲第一伊人| 久久婷婷久久一区二区三区| 亚洲女人天堂成人av在线| 日韩一级在线| 亚洲精选一区| 一本色道88久久加勒比精品| 亚洲国产导航| 一区二区激情| 欧美高清在线视频| 久久精品30| 欧美成人首页| 欧美无砖砖区免费| 国产免费亚洲高清| 国产欧美精品一区| 极品少妇一区二区三区| 亚洲国产精品高清久久久| 亚洲美女视频网| 亚洲欧美高清| 欧美日韩在线播| 国产精品乱看| 一区二区在线看| 欧美一区二区女人| 欧美国产高清| 性色一区二区三区| 欧美另类一区二区三区| 国产精品一卡| 在线一区二区三区做爰视频网站| 性视频1819p久久| 亚洲高清久久久| 亚洲私人影院在线观看| 久久综合久久久久88| 国产视频欧美视频| 夜夜嗨av一区二区三区网页| 久久国产精品久久久| 亚洲国产视频直播| 久久久噜噜噜久久中文字免| 欧美亚一区二区| 在线午夜精品自拍| 91久久极品少妇xxxxⅹ软件| 欧美影院久久久| 国产日韩一区| 欧美一区二区视频网站| 亚洲无线视频| 国产精品网站在线观看| 亚洲欧美另类国产| 亚洲夜晚福利在线观看| 国产一区二区丝袜高跟鞋图片| 国产精品你懂得| 在线亚洲国产精品网站| 日韩午夜av在线| 日韩视频精品在线| 国产精品theporn| 国产一区二区三区黄视频| 欧美一区二区高清| 久久国产婷婷国产香蕉| 136国产福利精品导航网址应用 | 999在线观看精品免费不卡网站| 久久久久一区二区三区四区| 亚洲电影免费| 夜夜嗨av一区二区三区| 国产精品久久久久久久午夜| 久久久久久久久久看片| 久久一区二区三区av| 一本色道久久加勒比精品| 亚洲一区二区在线| 亚洲人久久久| 欧美在线在线| 亚洲无限av看| 嫩草成人www欧美| 欧美专区福利在线| 欧美日本久久| 亚洲国产乱码最新视频| 欧美午夜在线观看| 亚洲国产欧洲综合997久久| 国产精品永久免费在线| 日韩视频免费| 日韩亚洲国产精品| 欧美v亚洲v综合ⅴ国产v| 久久一区二区三区四区| 国产欧美日韩视频一区二区| 亚洲午夜一区二区三区| 亚洲神马久久| 国产精品视频精品视频| 亚洲精品人人| 国产精品99久久久久久久vr|