HAOI2006 受歡迎的牛

2021-07-06 04:32:19 字數 919 閱讀 6969

題目:

分析:tarjan縮點。最後如果只有乙個出度為0的點,則答案就是這個點包含的牛數,否則為0.一開始最後統計的時候寫了dfs,後來發現是錯誤的,反例:

**:

#include 

#include

#include

#include

#include

using

namespace

std;

const

int tmax=10005;

int n,m,dfn[tmax],low[tmax],last,cnt,belong[tmax],num[tmax],d[tmax],out[tmax];

bool in[tmax];

vector

g[tmax],gg[tmax];

stack

st;void tarjan(int x)

else

if(in[to]) low[x]=min(low[x],dfn[to]);

}if(dfn[x]==low[x])

while(to!=x);

}return;

}void init()

}return;

}int main()

for(i=1;i<=n;i++)

if(dfn[i]==0) tarjan(i);

init();

u=0;

for(i=1;i<=cnt;i++)

if(out[i]==0)

u=i;

} printf("%d",num[u]);

return

0;}

HAOI2006 受歡迎的牛

這個就是強連通,計算出度為0的點就好 也沒森麼其它好講的啦 提交傳送們 description 每一頭牛的願望就是變成一頭最受歡迎的牛。現在有n頭牛,給你m對整數 a,b 表示牛a認為牛b受歡迎。這種關係是具有傳遞性的,如果a認為b受歡迎,b認為c受歡迎,那麼牛a也認為牛c受歡迎。你的任務是求出有多...

HAOI2006 受歡迎的牛

haoi2006 受歡迎的牛 每一頭牛的願望就是變成一頭最受歡迎的牛。現在有n頭牛,給你m對整數 a,b 表示牛 a 認為牛 b受歡迎。這種關係是具有傳遞性的,如果a認為b受歡迎,b認為c受歡迎,那麼牛a也認為牛c受歡迎。你的任務是求出有多少頭牛被所有的牛認為是受歡迎的。第1行兩個整數n,m 接下來...

HAOI2006 受歡迎的牛

1051 haoi2006 受歡迎的牛time limit 10 sec memory limit 162 mb submit 7267 solved 3868 submit status discuss 每一頭牛的願望就是變成一頭最受歡迎的牛。現在有n頭牛,給你m對整數 a,b 表示牛a認為牛b受...