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

alpc60 ACM/ICPC程序設(shè)計
成長的路……源
posts - 20,comments - 42,trackbacks - 0
 

Team Them Up!

Time Limit: 1000MS

 

Memory Limit: 10000K

Total Submissions: 1440

 

Accepted: 358

 

Special Judge

Description

Your task is to divide a number of persons into two teams, in such a way, that:

everyone belongs to one of the teams;

every team has at least one member;

every person in the team knows every other person in his team;

teams are as close in their sizes as possible.

This task may have many solutions. You are to find and output any solution, or to report that the solution does not exist.

Input

For simplicity, all persons are assigned a unique integer identifier from 1 to N.

The first line in the input file contains a single integer number N (2 <= N <= 100) - the total number of persons to divide into teams, followed by N lines - one line per person in ascending order of their identifiers. Each line contains the list of distinct numbers Aij (1 <= Aij <= N, Aij != i) separated by spaces. The list represents identifiers of persons that ith person knows. The list is terminated by 0.

Output

If the solution to the problem does not exist, then write a single message "No solution" (without quotes) to the output file. Otherwise write a solution on two lines. On the first line of the output file write the number of persons in the first team, followed by the identifiers of persons in the first team, placing one space before each identifier. On the second line describe the second team in the same way. You may write teams and identifiers of persons in a team in any order.

Sample Input

5
2 3 5 0
1 4 5 3 0
1 2 5 0
1 2 3 0
4 3 2 1 0

Sample Output

3 1 3 5
2 2 4

Source

Northeastern Europe 2001

 

 

題目大意:把n個人分成2各組,每一個人有他所認(rèn)識的人。所分的組有四點要求:

1、 每個人都必需屬于一個組。

2、 每個組至少有一個人。

3、 每個組里面的每個人必需互相認(rèn)識。

4、 兩個組的成員應(yīng)盡量接近。

首先分析這道題目,題目給出的是一個有向圖,即如果有A認(rèn)識B,但不一定有B認(rèn)識A。但是在所分配的組里面,任意兩個人都要互相認(rèn)識。

1、 先讀入數(shù)據(jù)建立有向圖,然后對這個有向圖進(jìn)行處理,如果兩個點之間的邊是單向邊,就認(rèn)為兩個點之間無邊(因為這兩個人不互相認(rèn)識),對于兩個點間的雙向邊,即建立一條無向邊(這兩個人互相認(rèn)識),這樣就可以把一個有向圖轉(zhuǎn)化為一個無向圖。

2、 將這個無向圖轉(zhuǎn)化為它的反圖。即有邊的把邊刪去,無邊的添上一條邊。(其實1,2步在程序?qū)崿F(xiàn)時可以一次完成)。

3、 對轉(zhuǎn)換后的反圖求極大連通分量。想想就會明白剛才為什么要求反圖,可以看到在這個反圖中的不同的連通分量中的兩個人都是互相認(rèn)識的!??!接下來很關(guān)鍵,那些互不認(rèn)識的人就在一個連通分量里面。

4、 在做DFS求連通分量的時候,同時對連通分量中的點染色(01),如果一個點顏色為0,那么所有和它相鄰的點與它的顏色應(yīng)該不同(標(biāo)記為1)。這是因為反圖中相鄰的兩個人都是不認(rèn)識的(回顧剛才反圖的作用)。這樣DFS結(jié)束后,就可以根據(jù)顏色把連通分量中的點分成兩個組s0s1,在不同兩個組的人是不可能分到一個team內(nèi)的。到這里要做一個特判,對于s0s1組里的任意兩個人p,q如果反圖中存在一條邊(p,q),說明無解,輸出"No solution"。

5、 求出了所有的連通分量,對于第i個連通分量都把其節(jié)點分為兩個組s1is2i。這時要做的就是把所有的s1is2i分配到team1team2中去,使team1的總和與team2的總和差值最小。就可以用背包DP了。
dp[i][j]
表示第i個連通分量達(dá)到j的差值,true為可達(dá),false為不可達(dá)。
狀態(tài)轉(zhuǎn)移方程:
dp[i][j+si0-si1]=true if dp[i-1][j] == true
dp[i][j-si0+si1]=true if dp[i-1][j] == true
同時記錄轉(zhuǎn)移路徑,差值j的范圍是-100~+100可以坐標(biāo)平移。
最后在dp[m][i]m是最后一個連通塊數(shù))中找出值為true的最小i值。輸出答案。


posted on 2008-08-08 00:51 飛飛 閱讀(3508) 評論(2)  編輯 收藏 引用 所屬分類: ACM/ICPC

FeedBack:
# re: POJ 1112 Team Them Up! 求補圖,連通分量,DP
2008-09-04 08:47 | ssadwlll
不愧是國防科技大學(xué)的大牛??!
  回復(fù)  更多評論
  
# re: POJ 1112 Team Them Up! 求補圖,連通分量,DP
2012-07-30 21:50 | Colleen
nice  回復(fù)  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久一区亚洲| 中文日韩在线| 日韩亚洲欧美一区二区三区| 欧美喷水视频| 欧美国产综合视频| 亚洲小说欧美另类社区| 日韩亚洲欧美一区| 国产欧美日韩在线播放| 久久久在线视频| 免费观看成人www动漫视频| 亚洲视频在线视频| 欧美亚洲自偷自偷| 日韩香蕉视频| 欧美在线一级va免费观看| 亚洲精品你懂的| 亚洲欧美日韩中文播放| 亚洲国产精品久久久久秋霞蜜臀| 亚洲美女性视频| 亚洲欧美国产视频| 91久久精品国产91久久性色| 一区二区三区国产在线观看| 樱桃国产成人精品视频| 99精品热视频| 91久久精品日日躁夜夜躁国产| 亚洲一区三区视频在线观看| 亚洲日本中文字幕| 久久超碰97人人做人人爱| 国产精品99久久久久久久女警| 久久婷婷av| 久久精品视频在线播放| 国产精品xxxxx| 亚洲片在线资源| 国产精品乱人伦中文| 最近中文字幕日韩精品| 影音先锋日韩精品| 香港成人在线视频| 亚洲——在线| 欧美日韩国产va另类| 久久精品日韩| 国产精品乱子久久久久| 日韩视频在线观看免费| 国产日本欧美一区二区三区| 亚洲高清视频一区二区| 亚洲大胆女人| 久久久国产91| 久久综合九色综合久99| 国产亚洲亚洲| 亚洲欧美日韩天堂| 亚洲欧美国产另类| 亚洲国产毛片完整版 | 亚洲另类视频| 亚洲国产精品成人久久综合一区| 亚洲精品资源| 亚洲午夜视频在线观看| 国产专区一区| 久久午夜电影网| 亚洲女女做受ⅹxx高潮| 欧美永久精品| 午夜精品久久久久久久99热浪潮| 国产精品美女久久久久久免费 | 亚洲黑丝一区二区| 精品动漫一区| 久久国产福利| 久久天天狠狠| 欧美在线视频在线播放完整版免费观看 | 亚洲精品1区2区| 影音先锋久久久| 欧美一区午夜精品| 久久久久国产精品人| 国产一区日韩二区欧美三区| 亚洲一区影院| 亚洲欧美日韩直播| 国产精品自拍三区| 欧美在线一级va免费观看| 久久一区视频| 国产一区二区三区奇米久涩| 久久九九国产精品怡红院| 女人天堂亚洲aⅴ在线观看| 一区二区在线不卡| 欧美高清视频一二三区| 中文成人激情娱乐网| 亚洲欧美日本精品| 国产精品一区2区| 久久成人这里只有精品| 欧美大片免费久久精品三p| 日韩亚洲欧美综合| 国产精品久久久久久久久久久久久 | 久久人91精品久久久久久不卡 | 一区二区三区在线看| 欧美在线影院| 亚洲国产精品欧美一二99| 国产精品99久久久久久www| 亚洲午夜精品| 欧美在线播放高清精品| 亚洲风情亚aⅴ在线发布| 9色国产精品| 国产欧美亚洲一区| 欧美mv日韩mv国产网站| 在线一区亚洲| 欧美高清成人| 午夜在线成人av| 亚洲精品一区二区三区蜜桃久| 国产精品大全| 久久夜色精品国产| 亚洲一区二区视频在线观看| 亚洲国产精品一区二区www| 欧美成人视屏| 欧美在线国产精品| 国产麻豆91精品| 亚洲欧美日本在线| 亚洲午夜视频在线观看| 欧美大片在线观看一区| 韩国一区电影| 亚洲欧美国产精品va在线观看| 欧美一区二区大片| 亚洲三级免费电影| 久久综合一区二区| 久久av资源网站| 欧美福利一区二区三区| 亚洲综合精品| 亚洲看片网站| 亚洲国产一区视频| 免费欧美日韩| 久久一区二区精品| 久久九九99| 欧美专区日韩视频| 小处雏高清一区二区三区| 亚洲视频在线观看免费| 一本色道久久综合狠狠躁篇怎么玩 | 亚洲精品一级| 亚洲国产免费看| 亚洲第一页在线| 在线观看日韩国产| 国产色综合久久| 国产日韩欧美自拍| 国产欧美日韩在线| 国产日韩在线不卡| 国产一区二区三区成人欧美日韩在线观看| 欧美日韩在线观看一区二区| 欧美美女日韩| 欧美午夜精品理论片a级大开眼界 欧美午夜精品理论片a级按摩 | 国产欧美在线观看| 一区二区三区四区蜜桃| 国产美女一区| 国产乱码精品1区2区3区| 国产精品免费福利| 国产乱码精品一区二区三区不卡| 国产精品中文字幕在线观看| 国产深夜精品| 在线观看国产欧美| 亚洲成色777777女色窝| 亚洲片国产一区一级在线观看| 亚洲日本va午夜在线电影| 亚洲毛片网站| 亚洲一区二区黄| 香蕉成人伊视频在线观看| 欧美中在线观看| 欧美99久久| 亚洲精选视频在线| 国产精品99久久久久久宅男| 亚洲在线成人精品| 新狼窝色av性久久久久久| 久久精品91| 欧美激情视频在线播放| 欧美性色综合| 狠色狠色综合久久| 免费在线成人| 亚洲精品偷拍| 欧美激情一区二区三区| 最近中文字幕日韩精品| 一区二区三区日韩精品视频| 欧美一级免费视频| 巨乳诱惑日韩免费av| 欧美美女bbbb| 国产综合久久久久久| 亚洲青涩在线| 性做久久久久久久免费看| 欧美激情一区二区三区在线视频| 久久久蜜臀国产一区二区| 亚洲二区视频| 亚洲综合电影| 欧美第一黄网免费网站| 国产精品久久久久一区二区三区共 | 亚洲人成在线播放| 亚洲欧美日韩中文播放| 99re视频这里只有精品| 欧美一区二区三区免费视频| 免费亚洲网站| 亚洲一区二区三区色| 久久综合中文| 国产精品人人爽人人做我的可爱 | 欧美一区在线视频| 欧美精品一区二区久久婷婷| 国产日本欧美在线观看| 亚洲精品乱码久久久久久按摩观| 午夜视频久久久久久| 欧美高清视频在线观看| 久久久久久久一区| 在线视频免费在线观看一区二区| 鲁大师影院一区二区三区|