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

oyjpArt ACM/ICPC算法程序設(shè)計空間

// I am new in programming, welcome to my blog
I am oyjpart(alpc12, 四城)
posts - 224, comments - 694, trackbacks - 0, articles - 6

PKU1733 URAL1003 Parity game

Posted on 2007-06-25 22:09 oyjpart 閱讀(1784) 評論(3)  編輯 收藏 引用 所屬分類: ACM/ICPC或其他比賽

Parity game
Time Limit:1000MS  Memory Limit:65536K
Total Submit:748 Accepted:310

Description
Now and then you play the following game with your friend. Your friend writes down a sequence consisting of zeroes and ones. You choose a continuous subsequence (for example the subsequence from the third to the fifth digit inclusively) and ask him, whether this subsequence contains even or odd number of ones. Your friend answers your question and you can ask him about another subsequence and so on. Your task is to guess the entire sequence of numbers.

You suspect some of your friend's answers may not be correct and you want to convict him of falsehood. Thus you have decided to write a program to help you in this matter. The program will receive a series of your questions together with the answers you have received from your friend. The aim of this program is to find the first answer which is provably wrong, i.e. that there exists a sequence satisfying answers to all the previous questions, but no such sequence satisfies this answer.

Input
The first line of input contains one number, which is the length of the sequence of zeroes and ones. This length is less or equal to 1000000000. In the second line, there is one positive integer which is the number of questions asked and answers to them. The number of questions and answers is less or equal to 5000. The remaining lines specify questions and answers. Each line contains one question and the answer to this question: two integers (the position of the first and last digit in the chosen subsequence) and one word which is either `even' or `odd' (the answer, i.e. the parity of the number of ones in the chosen subsequence, where `even' means an even number of ones and `odd' means an odd number).

Output
There is only one line in output containing one integer X. Number X says that there exists a sequence of zeroes and ones satisfying first X parity conditions, but there exists none satisfying X+1 conditions. If there exists a sequence of zeroes and ones satisfying all the given conditions, then number X should be the number of all the questions asked.

Sample Input

10
5
1 2 even
3 4 odd
5 6 even
1 6 even
7 10 odd

 

Sample Output

3

 

Source
CEOI 1999

Step 1:   由于端點數(shù)目遠(yuǎn)遠(yuǎn)小于數(shù)據(jù)范圍 給于數(shù)據(jù)范圍離散化
Step 2:將區(qū)間問題轉(zhuǎn)化成單點 sum[a,b] = sum[0,b] - sum[0, a-1];
Step 3:   構(gòu)造并查集,設(shè)置一個屬性prt代表和父結(jié)點的XOR值。即:
如果父結(jié)點為偶 prt = true 則本節(jié)點為奇
同理可推知其他情況 構(gòu)建并查集的目的是為了是查詢能夠在有聯(lián)系的兩個節(jié)點之間通過其他結(jié)點迅速判斷奇偶性
對于一個詢問(l, r, p):若l-1r是屬于同一個集合,則檢查l-1r相對于根o的奇偶性差異P[l -1, o]P[r, o]。看這兩個差異值的差異是不是就是p,即P[l-1, o] xor P[r, o]是不是等于p,不是則矛盾。若l-1r是不屬于同一個集合,則將l-1r所在樹的根節(jié)點合并起來,這兩個根結(jié)點間奇偶性差異為P[l-1,o] xor P[r, o] xor p
有構(gòu)建的方式可以看出 這個并查集是可以路徑壓縮的

 1
 2
 3
 4//pku1733 Parity game
 5//by oyjpArt
 6#include <map>
 7#include <iostream>
 8#include <string>
 9using namespace std;
10const int N  = 5010;
11int x[N], y[N];
12bool odd[N];
13int p[2 * N];
14bool prt[2 * N];
15int Root(int x, bool & e)
16{
17int r = x, t = x;
18bool res = prt[x];
19while(p[r] != r)
20{
21= p[r];
22res = res ^ prt[r];
23}
24= res;
25return r;
26}
27void Union(int a, int b, bool e)
28{
29p[a] = b;
30prt[a] = e;
31}
32bool chk(int idx)
33{
34int a = x[idx], b = y[idx];
35bool e = odd[idx], ea, eb;
36int ra = Root(a, ea), rb = Root(b, eb);
37if(ra == rb)
38{
39if( (ea ^ eb) != e) return false;
40}
41else
42{
43Union(ra, rb, (ea ^ eb ^ e) );
44}
45return true;
46}
47int main()
48{
49//    freopen("t.in""r", stdin);
50map<intint> m;
51int l, i, ncmd, a, b, idx;
52string s;
53cin >> l >> ncmd;
54for(i = 0, idx = 0; i < ncmd; ++i)
55{
56cin >> a >> b >> s;
57if(a > b) swap(a, b);
58--a;
59if(a < 0)
60while(1) printf("1");
61if(!m.count(a)) m[a] = idx++;
62if(!m.count(b)) m[b] = idx++;
63x[i] = m[a]; y[i] = m[b];
64odd[i] = s[0== 'o';
65}
66for(i = 0; i < idx; ++i) { p[i] = i; prt[i] = false; }
67for(i = 0; i < ncmd; ++i) {
68if(!chk(i))
69break;
70}
71printf("%d\n", i);
72return 0;
73}
74
75
76
77

Feedback

# re: PKU1733 URAL1003 Parity game   回復(fù)  更多評論   

2007-07-04 16:37 by acm
Have you got AC?
It is not right for my test case.

# re: PKU1733 URAL1003 Parity game   回復(fù)  更多評論   

2007-07-04 17:05 by oyjpart
Yes :)
2283654 alpc12 1733 Accepted 416K 514MS G++ 1412B 2007-06-23 23:01:56

what's your test case?

# re: PKU1733 URAL1003 Parity game   回復(fù)  更多評論   

2007-07-05 14:33 by acm
我從網(wǎng)上下載的test case,它的答案不對,呵呵

我的程序在POJ能PASS,在timus總是WA。。。
最后那行-1我也處理了,真怪


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲一本大道在线| 欧美日韩小视频| 欧美一区二区三区在线观看视频 | 另类酷文…触手系列精品集v1小说| 夜夜嗨av一区二区三区中文字幕| 亚洲第一精品在线| 精品成人国产| 136国产福利精品导航| 欧美日韩大片一区二区三区| 欧美连裤袜在线视频| 欧美激情亚洲激情| 久久精品国产一区二区三区免费看 | 久久狠狠久久综合桃花| 亚洲欧美综合国产精品一区| 久久电影一区| 久久精品一区二区三区中文字幕 | 91久久国产综合久久91精品网站| 最新日韩在线视频| 性欧美1819性猛交| 欧美成人在线免费观看| 国产欧美二区| 亚洲免费av观看| 久久久久看片| 一本色道久久综合亚洲精品按摩| 欧美亚洲三区| 欧美日韩中国免费专区在线看| 很黄很黄激情成人| 午夜精品久久久久久久蜜桃app | 久久久久久有精品国产| 欧美日韩在线三级| 在线观看视频日韩| 性欧美暴力猛交另类hd| 亚洲精品小视频在线观看| 久久国产精品99国产| 国产精品国产三级国产a| 最新日韩av| 欧美va亚洲va国产综合| 亚洲午夜在线观看| 欧美日韩一本到| 亚洲人成在线播放| 欧美91福利在线观看| 性亚洲最疯狂xxxx高清| 欧美午夜片在线免费观看| 亚洲美女精品久久| 欧美高清视频www夜色资源网| 欧美资源在线| 国产片一区二区| 亚洲男人的天堂在线aⅴ视频| 亚洲精品日本| 欧美日韩精品一区二区三区| 亚洲精品久久久久久下一站| 欧美激情视频一区二区三区免费| 久久久久久尹人网香蕉| 影音国产精品| 欧美国产精品| 欧美成人激情视频免费观看| 一色屋精品视频在线观看网站| 久久av老司机精品网站导航| 亚洲综合国产| 国产日韩欧美一区二区三区四区 | 尤物网精品视频| 另类av导航| 噜噜噜久久亚洲精品国产品小说| 亚洲黄色毛片| 亚洲精品国产系列| 欧美日韩和欧美的一区二区| 亚洲天堂成人在线观看| 亚洲一区二区三区高清不卡| 国产色视频一区| 麻豆精品在线视频| 欧美黑人一区二区三区| 亚洲网在线观看| 午夜亚洲性色视频| 亚洲激情影视| 夜夜嗨av一区二区三区免费区| 欧美日韩在线电影| 久久精品二区| 免费视频一区| 亚洲欧美日韩在线观看a三区| 欧美一区二区久久久| 亚洲电影毛片| 日韩系列在线| 国内外成人免费视频| 欧美激情久久久| 国产精品高潮久久| 久久综合九色综合网站| 欧美激情区在线播放| 亚洲欧美日韩综合一区| 久久精品一区二区三区四区| 一本到12不卡视频在线dvd | 午夜精品国产| 欧美一区网站| 999亚洲国产精| 亚洲一区在线播放| 91久久久亚洲精品| 亚洲综合色自拍一区| 一区二区三区在线视频播放| av成人免费观看| 亚洲人成在线观看| 久久不射电影网| 亚洲一区三区电影在线观看| 开心色5月久久精品| 香蕉国产精品偷在线观看不卡| 另类亚洲自拍| 久久国产欧美日韩精品| 欧美日韩美女| 亚洲国产精品久久人人爱蜜臀| 国产精品色婷婷| 亚洲毛片在线看| 亚洲欧洲日本mm| 久久精品日韩| 久久精品人人| 国产精品自拍在线| 一区二区三区成人精品| 亚洲精品一区二区三区福利| 欧美自拍偷拍| 久久久久久久综合日本| 国产精品视频第一区| 一区二区欧美视频| 国产精品99久久久久久www| 农夫在线精品视频免费观看| 老司机67194精品线观看| 国产欧美日韩专区发布| 国产精品99久久久久久www| 亚洲美女精品成人在线视频| 蜜月aⅴ免费一区二区三区| 你懂的网址国产 欧美| 伊人婷婷欧美激情| 久久嫩草精品久久久精品| 久久久五月天| 黄色成人在线网址| 久久五月天婷婷| 亚洲电影免费观看高清完整版在线 | 在线观看视频一区| 另类图片综合电影| 欧美激情在线有限公司| 亚洲国产网站| 欧美精品在线视频观看| 日韩西西人体444www| 午夜精品久久久久久久99热浪潮| 国产精品久久亚洲7777| 亚洲欧美日韩国产一区二区三区 | 宅男精品导航| 国产精品高清免费在线观看| 亚洲视频欧美视频| 久久大香伊蕉在人线观看热2| 国产亚洲福利社区一区| 久久久噜噜噜久久久| 亚洲电影免费在线 | 亚洲黄色天堂| 久久男人资源视频| 亚洲国产精品成人| 亚洲午夜av| 国产目拍亚洲精品99久久精品 | 亚洲视频在线一区| 欧美在线影院| 亚洲高清视频中文字幕| 欧美精品在线视频| 午夜精品久久久久久久99热浪潮| 久久婷婷人人澡人人喊人人爽| 亚洲国产精品尤物yw在线观看| 欧美日本国产精品| 亚洲欧美在线免费| 亚洲国产91色在线| 欧美在线视频免费| 91久久亚洲| 国产日韩欧美在线看| 欧美精品日韩精品| 欧美在线免费观看视频| 亚洲三级影院| 乱码第一页成人| 亚洲永久在线观看| 亚洲国产视频a| 国产女主播一区二区三区| 欧美阿v一级看视频| 亚洲一二三区在线| 亚洲国产精品久久久久秋霞影院| 午夜精品一区二区三区在线播放| 亚洲黄网站在线观看| 国产精品亚洲综合天堂夜夜| 蜜桃av一区二区三区| 新狼窝色av性久久久久久| 亚洲欧洲综合| 免费观看成人| 欧美影院视频| 亚洲视频在线播放| 亚洲国产综合在线| 国外视频精品毛片| 国产日韩亚洲欧美精品| 欧美日韩中文另类| 老司机精品导航| 性做久久久久久久免费看| 亚洲欧洲精品一区| 欧美黄色视屏| 免费视频久久| 麻豆成人在线播放| 久久综合99re88久久爱| 久久国产黑丝| 欧美在线观看一区二区| 欧美亚洲一区|