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

The 2010 ACM-ICPC Asia Chengdu Regional Contest - G Go Deeper 二分+2-SAT

Go Deeper

Time Limit: 2 Seconds      Memory Limit: 65536 KB

Here is a procedure's pseudocode:

	   go(int dep, int n, int m)
begin
output the value of dep.
if dep < m and x[a[dep]] + x[b[dep]] != c[dep] then go(dep + 1, n, m)
end

 

In this code n is an integer. a, b, c and x are 4 arrays of integers. The index of array always starts from 0. Array a and b consist of non-negative integers smaller than n. Array x consists of only 0 and 1. Array c consists of only 0, 1 and 2. The lengths of array a, b and c are m while the length of array x is n.

Given the elements of array a, b, and c, when we call the procedure go(0, n , m) what is the maximal possible value does the procedure output?

Input

There are multiple test cases. The first line of input is an integer T (0 < T ≤ 100), indicating the number of test cases. Then T test cases follow. Each case starts with a line of 2 integers n and m (0 < n ≤ 200, 0 < m ≤ 10000). Then m lines of 3 integers follow. The i-th(1 ≤ im) line of them are ai-1 ,bi-1 and ci-1 (0 ≤ ai-1, bi-1 < n, 0 ≤ ci-1 ≤ 2).

Output

For each test case, output the result in a single line.

Sample Input

3
2 1
0 1 0
2 1
0 0 0
2 2
0 1 0
1 1 2

 

Sample Output

1
1
2
解法:
看到x為二進(jìn)制數(shù)組就很敏感了,然后又看到c的值只能取0,1,2。很快想到了2-sat
t1=a[i],t2=b[i]
如果x[t1]+x[t2]!=0,那么就是說t1的0和t2的0沖突,添加t10->t21和t20->t11 
如果x[t1]+x[t2]!=2,那么就是說t1的1和t2的1沖突,添加t11->t20和t21->t10 
如果x[t1]+x[t2]!=1,那么就是說t1的0和t2的1沖突,以及t1的1和t2的0沖突,添加t10->t20和t21->t11 以及t11->t21和t20->t10 
貼代碼
 1# include <cstdio>
 2# include <vector>
 3# include <cstring>
 4using namespace std;
 5int n,m;
 6vector<int> g[500];
 7int a[10005],b[10005],c[10005];
 8int low[500],dfn,color[500],stack[500],top,co;
 9void tarjan(int pos)
10{
11   int now=dfn++;
12   low[pos]=now;
13   stack[++top]=pos;
14   for(int i=0;i<g[pos].size();i++)
15   {
16      if(low[g[pos][i]]==-1) tarjan(g[pos][i]);
17      if(low[g[pos][i]]<low[pos]) low[pos]=low[g[pos][i]];
18   }

19   if(low[pos]>=now)
20   {
21       do
22       {
23          color[stack[top]]=co;
24          low[stack[top]]=2*n;
25       }
while(stack[top--]!=pos);
26       co++;
27   }

28   
29}

30bool chk(int num)
31{
32   for(int i=0;i<(n<<1);i++)
33      g[i].clear();
34   for(int i=0;i<=num;i++)
35      switch(c[i])
36      {
37         case 0:
38              g[a[i]*2].push_back(b[i]*2+1);
39              g[b[i]*2].push_back(a[i]*2+1);
40              break;
41         case 1:
42              g[a[i]*2].push_back(b[i]*2);
43              g[b[i]*2+1].push_back(a[i]*2+1);
44              g[a[i]*2+1].push_back(b[i]*2+1);
45              g[b[i]*2].push_back(a[i]*2);
46              break;
47         case 2:
48              g[a[i]*2+1].push_back(b[i]*2);
49              g[b[i]*2+1].push_back(a[i]*2);
50              break;
51      }
;
52   memset(low,-1,sizeof(low));
53   dfn=co=0;
54   memset(color,-1,sizeof(color));
55   for(int i=0;i<2*n;i++)
56     if(low[i]==-1)
57     {
58       top=-1;
59       tarjan(i);
60     }

61   for(int i=0;i<n;i++)
62     if(color[2*i]==color[2*i+1])
63       return false;
64   return true;
65}

66int main()
67{
68    int test;
69    scanf("%d",&test);
70    while(test--)
71    {
72        scanf("%d%d",&n,&m);
73        for(int i=0;i<m;i++)
74          scanf("%d%d%d",a+i,b+i,c+i);
75        int s=0,e=m-1;
76        while(s<=e)
77        {
78           int mid=(s+e)>>1;
79           if(chk(mid)) s=mid+1;
80           else e=mid-1;
81        }

82        printf("%d\n",s);
83    }

84    return 0;
85}

86
87

posted on 2010-11-16 00:44 yzhw 閱讀(325) 評論(0)  編輯 收藏 引用 所屬分類: graph

<2011年1月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
303112345

導(dǎo)航

統(tǒng)計

公告

統(tǒng)計系統(tǒng)

留言簿(1)

隨筆分類(227)

文章分類(2)

OJ

最新隨筆

搜索

積分與排名

最新評論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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欧美在线播放| 久久精品麻豆| 欧美一级免费视频| 欧美制服丝袜第一页| 久久国产精品99久久久久久老狼| 亚洲欧美日韩人成在线播放| 亚洲欧美经典视频| 久久国产色av| 韩国三级电影一区二区| 激情综合亚洲| 日韩亚洲一区在线播放| 亚洲永久免费av| 欧美怡红院视频一区二区三区| 久久爱91午夜羞羞| 欧美激情在线狂野欧美精品| 99这里只有久久精品视频| 亚洲女优在线| 免费91麻豆精品国产自产在线观看| 欧美电影免费网站| 国产精品激情偷乱一区二区∴| 国产亚洲欧洲一区高清在线观看| 亚洲高清电影| 亚洲永久在线| 欧美成人精品三级在线观看| 99成人在线| 性做久久久久久久久| 久久中文精品| 国产精品日韩在线观看| 亚洲国产精品国自产拍av秋霞| 亚洲天堂av高清| 玖玖国产精品视频| 在线视频一区观看| 欧美激情国产高清| 国产午夜亚洲精品羞羞网站| 日韩一二三区视频| 老鸭窝毛片一区二区三区| 亚洲精品在线二区| 久久人91精品久久久久久不卡| 欧美性猛交视频| 亚洲人屁股眼子交8| 久久久亚洲一区| 亚洲无线一线二线三线区别av| 免费不卡在线视频| 韩国av一区| 久久爱www.| 亚洲伊人观看| 欧美日一区二区三区在线观看国产免 | 一区二区三区欧美视频| 久久久久久久波多野高潮日日| 亚洲一级特黄| 制服丝袜激情欧洲亚洲| 久久久久9999亚洲精品| 在线亚洲欧美专区二区| 欧美精品自拍| 亚洲精品国产欧美| 欧美黄色影院| 久久综合久久综合九色| 精品99一区二区| 久久一区二区三区av| 欧美亚洲三区| 国产欧美一区二区视频| 亚洲你懂的在线视频| 正在播放欧美视频| 国产精品普通话对白| 亚洲欧美一区二区激情| 亚洲一二三区视频在线观看| 国产精品你懂的在线欣赏| 亚洲欧美日韩国产综合| 亚洲一区二区在线看| 国产欧美日韩一区二区三区在线观看 | 久久久国产亚洲精品| 国产一区在线播放| 久久久久综合| 久久综合影音| aa成人免费视频| 一区二区三区导航| 国产欧美日韩免费| 久热re这里精品视频在线6| 久久精品青青大伊人av| 亚洲欧洲免费视频| 日韩亚洲不卡在线| 国产精品色午夜在线观看| 久久九九免费视频| 猛干欧美女孩| 亚洲已满18点击进入久久| 午夜精品一区二区三区在线播放| 国产专区一区| 亚洲精品国产日韩| 欧美激情一级片一区二区| 亚洲一区二区三区四区五区午夜| 亚洲欧美国产高清| 亚洲国产精品尤物yw在线观看| 亚洲精品影院| 狠狠色丁香久久综合频道| 欧美成人免费网站| 国产精品99免费看 | 国产三级精品三级| 每日更新成人在线视频| 欧美精品啪啪| 欧美中文在线观看国产| 久久夜精品va视频免费观看| 一本色道久久综合亚洲精品不| 亚洲免费一在线| 亚洲精品人人| 欧美在线视频不卡| 亚洲先锋成人| 国产精品成人aaaaa网站| 欧美一级大片在线观看| 免费不卡视频| 久久久91精品| 国产精品福利在线观看网址| 欧美va天堂| 国产麻豆成人精品| av成人免费| 日韩视频中文| 久久久久久穴| 久久国产精品亚洲va麻豆| 欧美日韩四区| 亚洲欧洲三级| 亚洲第一精品夜夜躁人人躁| 亚洲性视频h| 亚洲一区二区高清| 欧美欧美天天天天操| 欧美大学生性色视频| 韩日视频一区| 久久本道综合色狠狠五月| 亚洲欧美日本日韩| 欧美日韩在线视频首页| 亚洲国产欧美日韩| 亚洲国产高清在线观看视频| 久久国产精品第一页| 欧美一区二区在线免费播放| 欧美无乱码久久久免费午夜一区| 亚洲国产日韩欧美在线图片| 在线看一区二区| 久久免费视频一区| 免费成人小视频| 国产综合欧美| 久久久久久久综合| 久久免费少妇高潮久久精品99| 国产精品私拍pans大尺度在线| 亚洲精品专区| 亚洲午夜羞羞片| 国产精品成人免费| 亚洲综合不卡| 久久久国际精品| 一区二区在线看| 噜噜噜在线观看免费视频日韩| 欧美大片在线观看一区二区| 日韩一级精品| 国产精品theporn| 午夜精品福利视频| 久久综合网hezyo| 亚洲日本成人网| 欧美日韩综合在线免费观看| 午夜精品亚洲| 亚洲成人在线视频播放| 亚洲人成绝费网站色www| 欧美精品一区视频| 一区二区不卡在线视频 午夜欧美不卡在 | 国产综合一区二区| 欧美一区二区精美| 久久综合伊人77777蜜臀| 尤物精品在线| 国产一区美女| 999在线观看精品免费不卡网站| 一区二区欧美国产| 国产精品激情电影| 久久精品卡一| 亚洲日韩欧美视频| 亚洲一区二区精品视频| 国产伦精品一区二区三区视频孕妇 | 日韩视频在线你懂得| 性欧美1819性猛交| 91久久精品日日躁夜夜躁国产| 欧美绝品在线观看成人午夜影视| 亚洲午夜一区二区| 能在线观看的日韩av| 一本一本久久a久久精品综合麻豆| 国产精品第十页| 久久精品女人| 中文av一区特黄| 欧美国产一区视频在线观看| 一区二区三区四区国产| 狠狠色狠色综合曰曰| 欧美视频导航| 欧美va亚洲va香蕉在线| 亚洲特级毛片| 在线观看不卡av| 国产精品综合| 欧美日韩国产成人在线91| 欧美资源在线观看| 夜色激情一区二区| 欧美二区在线| 媚黑女一区二区| 久久精品国亚洲| 午夜精彩国产免费不卡不顿大片| 亚洲精品一区在线| 亚洲激情视频|