日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

BZOJ1823:[JSOI2010]满汉全席(2-SAT)

發(fā)布時(shí)間:2025/3/20 javascript 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 BZOJ1823:[JSOI2010]满汉全席(2-SAT) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Description

滿漢全席是中國(guó)最豐盛的宴客菜肴,有許多種不同的材料透過(guò)滿族或是漢族的料理方式,呈現(xiàn)在數(shù)量繁多的菜色之中。由于菜色眾多而繁雜,只有極少數(shù)博學(xué)多聞技藝高超的廚師能夠做出滿漢全席,而能夠烹飪出經(jīng)過(guò)專家認(rèn)證的滿漢全席,也是中國(guó)廚師最大的榮譽(yù)之一。 世界滿漢全席協(xié)會(huì)是由能夠料理滿漢全席的專家廚師們所組成,而他們之間還細(xì)分為許多不同等級(jí)的廚師。為了招收新進(jìn)的廚師進(jìn)入世界滿漢全席協(xié)會(huì),將于近日舉辦滿漢全席大賽,協(xié)會(huì)派遣許多會(huì)員當(dāng)作評(píng)審員,為的就是要在參賽的廚師之中,找到滿漢料理界的明日之星。 大會(huì)的規(guī)則如下:每位參賽的選手可以得到n 種材料,選手可以自由選擇用滿式或是漢式料理將材料當(dāng)成菜肴。大會(huì)的評(píng)審制度是:共有m 位評(píng)審員分別把關(guān)。每一位評(píng)審員對(duì)于滿漢全席有各自獨(dú)特的見(jiàn)解,但基本見(jiàn)解是,要有兩樣菜色作為滿漢全席的標(biāo)志。如某評(píng)審認(rèn)為,如果沒(méi)有漢式東坡肉跟滿式的涮羊肉鍋,就不能算是滿漢全席。但避免過(guò)于有主見(jiàn)的審核,大會(huì)規(guī)定一個(gè)評(píng)審員除非是在認(rèn)為必備的兩樣菜色都沒(méi)有做出來(lái)的狀況下,才能淘汰一位選手,否則不能淘汰一位參賽者。換句話說(shuō),只要參賽者能在這兩種材料的做法中,其中一個(gè)符合評(píng)審的喜好即可通過(guò)該評(píng)審的審查。如材料有豬肉,羊肉和牛肉時(shí),有四位評(píng)審員的喜好如下表: 評(píng)審一 評(píng)審二 評(píng)審三 評(píng)審四 滿式牛肉 滿式豬肉 漢式牛肉 漢式牛肉 漢式豬肉 滿式羊肉 漢式豬肉 滿式羊肉 如參賽者甲做出滿式豬肉,滿式羊肉和滿式牛肉料理,他將無(wú)法滿足評(píng)審三的要求,無(wú)法通過(guò)評(píng)審。而參賽者乙做出漢式豬肉,滿式羊肉和滿式牛肉料理,就可以滿足所有評(píng)審的要求。 但大會(huì)后來(lái)發(fā)現(xiàn),在這樣的制度下如果材料選擇跟派出的評(píng)審員沒(méi)有特別安排好的話,所有的參賽者最多只能通過(guò)部分評(píng)審員的審查而不是全部,所以可能會(huì)發(fā)生沒(méi)有人通過(guò)考核的情形。如有四個(gè)評(píng)審員喜好如下表時(shí),則不論參賽者采取什么樣的做法,都不可能通過(guò)所有評(píng)審的考核: 評(píng)審一 評(píng)審二 評(píng)審三 評(píng)審四 滿式羊肉 滿式豬肉 漢式羊肉 漢式羊肉 漢式豬肉 滿式羊肉 漢式豬肉 滿式豬肉 所以大會(huì)希望有人能寫(xiě)一個(gè)程序來(lái)判斷,所選出的m 位評(píng)審,會(huì)不會(huì)發(fā)生 沒(méi)有人能通過(guò)考核的窘境,以便協(xié)會(huì)組織合適的評(píng)審團(tuán)。

Input

第一行包含一個(gè)數(shù)字 K,代表測(cè)試文件包含了K 組資料。每一組測(cè)試資料的第一行包含兩個(gè)數(shù)字n 跟m(n≤100,m≤1000),代表有n 種材料,m 位評(píng)審員。為方便起見(jiàn),材料舍棄中文名稱而給予編號(hào),編號(hào)分別從1 到n。接下來(lái)的m 行,每行都代表對(duì)應(yīng)的評(píng)審員所擁有的兩個(gè)喜好,每個(gè)喜好由一個(gè)英文字母跟一個(gè)數(shù)字代表,如m1 代表這個(gè)評(píng)審喜歡第1 個(gè)材料透過(guò)滿式料理做出來(lái)的菜,而h2 代表這個(gè)評(píng)審員喜歡第2 個(gè)材料透過(guò)漢式料理做出來(lái)的菜。每個(gè)測(cè)試文件不會(huì)有超過(guò)50 組測(cè)試資料

Output

每筆測(cè)試資料輸出一行,如果不會(huì)發(fā)生沒(méi)有人能通過(guò)考核的窘境,輸出GOOD;否則輸出BAD(大寫(xiě)字母)。

Sample Input

2
3 4
m3 h1
m1 m2
h1 h3
h3 m2
2 4
h1 m2
m2 m1
h1 h2
m1 h2

Sample Output

GOOD
BAD

Solution

裸題,直接對(duì)食物$2-SAT$。

不會(huì)的話可能還得再重學(xué)一下……

Code

1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #define N (2009) 5 using namespace std; 6 7 struct Edge{int to,next;}edge[N<<1]; 8 int DFN[N],Low[N],ID[N],vis[N],dfs_num,id_num; 9 int T,n,m,x[2],y[2]; 10 int head[N],num_edge,stack[N],top; 11 12 inline int read() 13 { 14 int x=0,w=1; char c=getchar(); 15 while (c<'0' || c>'9') {if (c=='-') w=-1; c=getchar();} 16 while (c>='0' && c<='9') x=x*10+c-'0', c=getchar(); 17 return x*w; 18 } 19 20 void add(int u,int v) 21 { 22 edge[++num_edge].to=v; 23 edge[num_edge].next=head[u]; 24 head[u]=num_edge; 25 } 26 27 void Clear() 28 { 29 memset(head,0,sizeof(head)); 30 memset(Low,0,sizeof(Low)); 31 memset(DFN,0,sizeof(DFN)); 32 memset(ID,0,sizeof(ID)); 33 num_edge=0; dfs_num=0; id_num=0; 34 } 35 36 void Tarjan(int x) 37 { 38 DFN[x]=Low[x]=++dfs_num; vis[x]=1; stack[++top]=x; 39 for (int i=head[x]; i; i=edge[i].next) 40 if (!DFN[edge[i].to]) 41 { 42 Tarjan(edge[i].to); 43 Low[x]=min(Low[x],Low[edge[i].to]); 44 } 45 else if (vis[edge[i].to]) 46 Low[x]=min(Low[x],DFN[edge[i].to]); 47 if (DFN[x]==Low[x]) 48 { 49 vis[x]=0; ID[x]=++id_num; 50 while (stack[top]!=x) 51 vis[stack[top]]=0, ID[stack[top--]]=id_num; 52 top--; 53 } 54 } 55 56 int main() 57 { 58 T=read(); 59 while (T--) 60 { 61 Clear(); 62 n=read(); m=read(); 63 for (int i=1; i<=m; ++i) 64 { 65 for (int j=0; j<=1; ++j) 66 { 67 char c=getchar(); 68 while (c<'a' || c>'z') c=getchar(); 69 x[j]=(c=='m'); y[j]=read(); 70 } 71 add(y[0]+(x[0]^1)*n,y[1]+x[1]*n); 72 add(y[1]+(x[1]^1)*n,y[0]+x[0]*n); 73 } 74 for (int i=1; i<=2*n; ++i) 75 if (!DFN[i]) Tarjan(i); 76 bool flag=1; 77 for (int i=1; i<=n; ++i) 78 if (ID[i]==ID[i+n]) flag=0; 79 if (flag) puts("GOOD"); 80 else puts("BAD"); 81 } 82 }

轉(zhuǎn)載于:https://www.cnblogs.com/refun/p/10374734.html

總結(jié)

以上是生活随笔為你收集整理的BZOJ1823:[JSOI2010]满汉全席(2-SAT)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天天夜夜啦啦啦 | 天天操天天操天天操天天操 | 精品国语对白 | 国产一区麻豆 | 蜜臀中文字幕 | 精品人妻av在线 | 2021亚洲天堂 | 国产精品va| 激情五月俺也去 | 婷婷综合视频 | 日韩成人一区二区三区 | 色爽交 | 欧美一区二区三区成人精品 | 蜜桃视频一区二区在线观看 | 一级影片在线观看 | 五月激情小说 | 色欲久久久天天天精品综合网 | 精品久久99 | 91视频青青草 | 亚洲高清在线观看 | 国产激情视频在线观看 | 国产激情视频一区 | 在线观看亚洲成人 | 欧美色图30p| 欧美日韩小说 | 免费av软件 | 欧美黑人三级 | 天堂网在线最新版www中文网 | 激情四射婷婷 | 免费国产在线观看 | 日本免费一区视频 | 91成人在线免费观看 | 69福利社区| 天天色综合久久 | 日韩一级片一区二区 | eeuss鲁片一区二区三区在线观看 | 中国少妇av | 可以看污的网站 | 99久久精品一区二区 | 98自拍视频 | 日日操夜夜操狠狠操 | 久久午夜精品 | 少妇精品视频 | 性感美女被爆操 | 黄色性视频网站 | 欧美性猛交xxxx乱大交hd | av网站免费播放 | 国产免费一区二区三区四区五区 | 深夜福利久久 | 国产精品久久久久久免费播放 | 中文字幕日日 | 激情一区二区三区 | 中文视频在线观看 | 国产白袜脚足j棉袜在线观看 | 久久人人爱 | 色婷婷av一区二区三区在线观看 | 一区二区三区日韩精品 | 日本一区二区免费在线 | 草草浮力影院 | 51嘿嘿嘿国产精品伦理 | 无码人妻一区二区三区精品视频 | 成年人在线观看网站 | 色99视频 | 美女露出让男生揉的视频 | 欧美性受xxx黑人xyx性爽 | 天天av天天| 亚洲精品天天 | 超碰在线香蕉 | 亚洲四虎av | 91精品婷婷国产综合久久竹菊 | 欧美毛片网站 | 亚洲国产成人精品视频 | 国产99久久久国产精品成人免费 | 国产日本欧美一区二区 | 国产主播在线看 | 夜夜骑夜夜骑 | 俄罗斯精品一区二区三区 | 九热精品| 国产一二三区精品 | 亚洲国产精品毛片 | 久久国产成人 | 国产一区欧美一区 | 国产二区电影 | 骚婷婷 | 中文字幕人成乱码熟女香港 | 五月婷婷俺也去 | 黄色大片黄色大片 | 男女猛烈无遮挡 | 欧美高清视频一区二区三区 | 亚洲欧美在线观看视频 | 美女视频在线观看免费 | 亚洲免费天堂 | 免费a级片在线观看 | 一级日批片 | 国产毛片儿 | 成人www | 国产吞精囗交免费视频 | 欧美在线视频一区 | 午夜生活片 |