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

POJ 1236 Network of Schools 強連通分量+縮點

 

Description

A number of schools are connected to a computer network. Agreements have been developed among those schools: each school maintains a list of schools to which it distributes software (the “receiving schools”). Note that if B is in the distribution list of school A, then A does not necessarily appear in the list of school B
You are to write a program that computes the minimal number of schools that must receive a copy of the new software in order for the software to reach all schools in the network according to the agreement (Subtask A). As a further task, we want to ensure that by sending the copy of new software to an arbitrary school, this software will reach all schools in the network. To achieve this goal we may have to extend the lists of receivers by new members. Compute the minimal number of extensions that have to be made so that whatever school we send the new software to, it will reach all other schools (Subtask B). One extension means introducing one new member into the list of receivers of one school.

Input

The first line contains an integer N: the number of schools in the network (2 <= N <= 100). The schools are identified by the first N positive integers. Each of the next N lines describes a list of receivers. The line i+1 contains the identifiers of the receivers of school i. Each list ends with a 0. An empty list contains a 0 alone in the line.

Output

Your program should write two lines to the standard output. The first line should contain one positive integer: the solution of subtask A. The second line should contain the solution of subtask B.

Sample Input

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

Sample Output

1
2

Source

   

題目大意:N(2<N<100)各學(xué)校之間有單向的網(wǎng)絡(luò),每個學(xué)校得到一套軟件后,可以通過單向網(wǎng)絡(luò)向周邊的學(xué)校傳輸,問題1:初始至少需要向多少個學(xué)校發(fā)放軟件,使得網(wǎng)絡(luò)內(nèi)所有的學(xué)校最終都能得到軟件。2,至少需要添加幾條傳輸線路(邊),使任意向一個學(xué)校發(fā)放軟件后,經(jīng)過若干次傳送,網(wǎng)絡(luò)內(nèi)所有的學(xué)校最終都能得到軟件。

具體算法:先用Korasaju Algorithm求出有向圖所有的強連通分量,然后將所有的強連通分量縮成一個點(縮點),這樣原來的有向圖就縮成了一個DAG圖(有向無環(huán)圖);用2個數(shù)組分別記錄新生成的DAG圖中的每個頂點(包括原來的頂點和強連通分量的縮點)是否有出邊和入邊,最后遍歷每個頂點,如果沒有入邊,則ans1++;如果沒有出邊,ans2++。最后所求即為ans1和max(ans1,ans2)。
#include <iostream>
#include 
<vector>
using namespace std;

const int MAXN = 101;
int n,m,cnt;
bool visit[MAXN];
int set[MAXN],order[MAXN],in[MAXN],out[MAXN];
vector
< vector<int> > adj;
vector
< vector<int> > radj;

void dfs(int u){
    visit[u]
=true;
    
int i,len=adj[u].size();
    
for(i=0;i<len;i++)
        
if(!visit[adj[u][i]])
            dfs(adj[u][i]);
    order[cnt
++]=u;
}

void rdfs(int u){
    visit[u]
=true;
    
set[u]=cnt;
    
int i,len=radj[u].size();
    
for(i=0;i<len;i++)
        
if(!visit[radj[u][i]])
            rdfs(radj[u][i]);
}

void korasaju(){
    
int i;
    memset(visit,
false,sizeof(visit));
    
for(cnt=0,i=1;i<=n;i++)
        
if(!visit[i])
            dfs(i);
    memset(visit,
false,sizeof(visit));
    
for(cnt=0,i=n-1;i>=0;i--)
        
if(!visit[order[i]])
            cnt
++,rdfs(order[i]);
}

int main(){
    
int i,j;
    scanf(
"%d",&n);
    adj.assign(n
+1,vector<int>());
    radj.assign(n
+1,vector<int>());
    
for(i=1;i<=n;i++){
        
while(scanf("%d",&m),m){
            adj[i].push_back(m);
            radj[m].push_back(i);
        }

    }

    korasaju();
    memset(
in,1,sizeof(in));
    memset(
out,1,sizeof(out));
    
for(i=1;i<=n;i++)
        
for(j=0;j<adj[i].size();j++)
            
if(set[i]!=set[adj[i][j]]){
                
out[set[i]]=0;
                
in[set[adj[i][j]]]=0;
            }

    
int ans1=0,ans2=0;
    
for(i=1;i<=cnt;i++){
        
if(out[i]) ans2++;
        
if(in[i]) ans1++;
    }

    
if(cnt==1){
        printf(
"1\n");
        printf(
"0\n");
    }

    
else{
        printf(
"%d\n",ans1);
        printf(
"%d\n",max(ans1,ans2));
    }

    
return 0;
}

posted on 2009-05-25 16:21 極限定律 閱讀(1365) 評論(0)  編輯 收藏 引用 所屬分類: ACM/ICPC

<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

導(dǎo)航

統(tǒng)計

常用鏈接

留言簿(10)

隨筆分類

隨筆檔案

友情鏈接

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲专区在线视频| 欧美成黄导航| 久久综合九色九九| 亚洲精品午夜| 国产视频欧美视频| 欧美亚洲一区| 亚洲图片欧洲图片av| 亚洲人成在线免费观看| 精品电影在线观看| 激情视频一区| 又紧又大又爽精品一区二区| 国产精品久久久久久久久借妻 | 99视频日韩| 一区二区欧美激情| 亚洲伊人伊色伊影伊综合网| 亚洲女同性videos| 久久九九国产精品怡红院| 久久av资源网站| 欧美成人精品激情在线观看| 欧美久久婷婷综合色| 国产精品一区二区男女羞羞无遮挡| 国产精品一区二区你懂得| 伊人久久综合| 亚洲无毛电影| 你懂的网址国产 欧美| 亚洲午夜激情在线| 你懂的网址国产 欧美| 国产一区二区中文字幕免费看| 亚洲黄色天堂| 久久国产毛片| 91久久精品日日躁夜夜躁国产| 亚洲激情av在线| 久久国内精品自在自线400部| 欧美日韩一区视频| 久久免费午夜影院| 欧美香蕉视频| 日韩一级大片在线| 欧美1区2区视频| 久久精品亚洲| 黄色欧美日韩| 欧美成人综合在线| 久久精品国产免费观看| 国产欧美在线观看| 亚洲欧美日韩一区二区在线 | 亚洲精品影院| 欧美激情一区二区三区全黄 | 国产精品久久久久久福利一牛影视 | 欧美国产日韩在线观看| 国产精品入口66mio| 欧美日韩另类字幕中文| 在线欧美福利| 亚洲国产成人一区| 欧美日韩另类国产亚洲欧美一级| 亚洲黄一区二区三区| 91久久久国产精品| 国产精品成人一区| 久久国产毛片| 欧美日韩成人| 久久久精品999| 免费精品视频| 午夜一级在线看亚洲| 久久久综合香蕉尹人综合网| 亚洲美女毛片| 欧美一区二区在线观看| 夜夜嗨av色一区二区不卡| 亚洲欧美日韩国产中文在线| 激情久久综合| 中国女人久久久| 在线观看日韩欧美| 亚洲欧美中文日韩在线| 一区二区三区成人精品| 久久精品久久99精品久久| 亚洲在线视频一区| 欧美久久一级| 亚洲国产精品久久久久婷婷884| 国产伦精品一区二区三区高清版| 亚洲第一中文字幕在线观看| 中文精品视频| 日韩一区二区精品视频| 久久九九热re6这里有精品| 亚洲欧美国产毛片在线| 久久gogo国模裸体人体| 亚洲无亚洲人成网站77777| 黄色一区三区| 久久久久国产精品人| 中文在线资源观看网站视频免费不卡| 先锋亚洲精品| 免费久久99精品国产自在现线| 国产在线精品自拍| 久久中文字幕一区| 亚洲激情成人| 销魂美女一区二区三区视频在线| 国产精品美女999| 久久成人免费电影| 亚洲国产精品毛片| 午夜精品www| 亚洲国产另类久久精品| 欧美精品1区2区| 欧美一级淫片aaaaaaa视频| 免费人成精品欧美精品| 亚洲黄色在线看| 欧美天天在线| 久久一区二区三区四区| 中日韩美女免费视频网址在线观看| 久久深夜福利免费观看| 亚洲欧美视频在线| 亚洲激情校园春色| 国模精品一区二区三区| 欧美色图一区二区三区| 久久视频免费观看| 久久国产福利| 一区二区精品在线观看| 亚洲第一狼人社区| 美女视频网站黄色亚洲| 欧美一区在线视频| 亚洲自拍16p| 亚洲一区美女视频在线观看免费| 美女精品视频一区| 久久久精品日韩欧美| 午夜精品亚洲| 欧美一区二区国产| 亚洲欧美日本国产专区一区| 99精品欧美一区二区三区| 在线成人h网| 亚洲国产一二三| 亚洲人成网站色ww在线| 亚洲精品黄网在线观看| 亚洲麻豆视频| 午夜精品在线观看| 久久露脸国产精品| 亚洲第一在线| 亚洲调教视频在线观看| 欧美在线观看网址综合| 久热国产精品| 国产精品视频久久| 欧美午夜精品伦理| 在线观看成人av电影| 一本色道久久综合狠狠躁篇的优点 | 蜜臀a∨国产成人精品| 女人香蕉久久**毛片精品| 欧美日韩精品欧美日韩精品| 国产精品美女www爽爽爽| 在线日韩视频| 欧美一区二区三区在线播放| 美女脱光内衣内裤视频久久影院| 欧美国产第一页| 亚洲综合好骚| 国产精品久久91| 国产日韩一区在线| 女同一区二区| 欧美人成免费网站| 亚洲国产天堂久久综合网| 一本久道久久综合狠狠爱| 美国成人毛片| 亚洲国产精品久久久久| 欧美中文在线字幕| 亚洲一区在线免费| 国产精品久久久久久久久久久久久久 | 国产一区再线| 亚洲欧美激情视频| 亚洲一区在线播放| 国产精品爽爽爽| 久久国产精品久久国产精品| 中文av一区特黄| 韩国一区二区三区在线观看| 欧美一区二区视频在线观看| 99在线精品观看| 欧美揉bbbbb揉bbbbb| 亚洲女爱视频在线| 欧美一区二区国产| 永久免费精品影视网站| 欧美jizz19性欧美| 欧美日韩ab片| 久久久91精品国产| 欧美电影免费观看高清| 亚洲视频精品在线| 欧美亚洲在线观看| 国产一区二区三区观看| 噜噜噜噜噜久久久久久91| 欧美成人精品一区| 性8sex亚洲区入口| 欧美刺激午夜性久久久久久久| 亚洲一区二区三区四区五区黄| 久久精品一本久久99精品| 中文欧美在线视频| 免费不卡在线观看av| 久久久久久久久蜜桃| 欧美肉体xxxx裸体137大胆| 久久阴道视频| 亚洲毛片视频| 亚洲日本成人女熟在线观看| 亚洲一区二区三区三| 一本色道久久88综合日韩精品| 久久免费精品日本久久中文字幕| 久久不射网站| 国产精品专区h在线观看| 中国成人在线视频| 亚洲欧美视频在线观看| 欧美日韩国产一中文字不卡| 亚洲国产小视频|