P2341 [HAOI2006]受欢迎的牛 如果一个牛,是明星牛,因为喜欢的关系是可以传递的,因此他喜欢的牛也都是明星牛。 反之,以为这只明星牛被所有牛喜欢,那么他喜欢的牛也一定喜欢他,两只牛也一定是相互喜欢的,继续传递下去,下一只牛喜欢的也一定是明星牛,他们之间一定相互喜欢,因此,所有明星牛一定构成一个强连通分量。 并且,这个强连
题解报告:https://www.luogu.org/problemnew/show/P2341 我们把图中的强连通分量缩点,然后只有出度为0的牛是受欢迎的,这样如果出度为0的牛只有一个,说明受所有牛欢迎。否则出度为0只是受一些牛欢迎。 #include <stack> #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> us...
传送门:https://www.luogu.org/problemnew/show/P2341 Solution 前排提示,本蒟蒻做法既奇葩又麻烦 我们先可以把题目转换一下。 可以把一头牛喜欢另外一头牛理解为另外一头牛被一头牛喜欢。 我们把被喜欢的关系建边,即B被A喜欢,从B向A连一条有向边。 显然,一个点若能到达其他所有节点,它就是题目中的明星...
被所有奶牛喜欢的奶牛就是一头明星奶牛。所有奶牛都是自恋狂,每头奶牛总是喜欢自己的。奶牛之间的“喜欢”是可以传递的——如果 AA 喜欢BB,BB 喜欢CC,那么 AA 也喜欢 CC。牛栏里共有 NN 头奶牛,给定一些奶牛之间的爱慕关系,请你算出有多少头奶牛可以当明星。 输入格式 第一行:两个用空格分开的整数:NN 和...
Luogu2341 受欢迎的牛 好题。 在有向图中找到强连通子图,缩点,记上里面有几头牛,变成DAG。 然后找出出度为0的点。如果这样的点的数量不等于1显然输出0。否则答案就是这个点的原点数。 为了方便,反向建边,变统计出度为入度。枚举每一个原图的点u,如果找到原图中与u点相连的v不属于同一个scc,那么入度+1...
bzoj1051&luogu2341 HAOI2006受欢迎的牛 题目描述 每头奶牛都梦想成为牛棚里的明星。被所有奶牛喜欢的奶牛就是一头明星奶牛。所有奶 牛都是自恋狂,每头奶牛总是喜欢自己的。奶牛之间的“喜欢”是可以传递的——如果A喜 欢B,B喜欢C,那么A也喜欢C。牛栏里共有N 头奶牛,给定一些奶牛之间的爱慕关系,请...
luogu P2341 [HAOI2006]受欢迎的牛 题目描述 每头奶牛都梦想成为牛棚里的明星。被所有奶牛喜欢的奶牛就是一头明星奶牛。所有奶 牛都是自恋狂,每头奶牛总是喜欢自己的。奶牛之间的“喜欢”是可以传递的——如果A喜 欢B,B喜欢C,那么A也喜欢C。牛栏里共有N 头奶牛,给定一些奶牛之间的爱慕关系,请你...
Luogu2341 受欢迎的牛 好题。 在有向图中找到强连通子图,缩点,记上里面有几头牛,变成DAG。 然后找出出度为0的点。如果这样的点的数量不等于1显然输出0。否则答案就是这个点的原点数。 为了方便,反向建边,变统计出度为入度。枚举每一个原图的点u,如果找到原图中与u点相连的v不属于同一个scc,那么入度+1...
缩完点后枚举边 然后就来统计现在的入度 最后就看有没有多于两个0入度的点 如果有 就没有牛可以成为明星 #include<iostream>#include<cstdio>#include<queue>#include<cstring>#include<cmath>#include<vector>#include<stack>#include<algorithm>usingnamespacestd;constintN=10000+5,M=50000+5;intn,m,dfn[...
【HAOI2006】【luogu2341】受欢迎的牛 //即缩点拓扑序以后最后一个SCC的大小 #include<iostream> #include<algorithm> #include<vector> #include<cstring> #define maxn 10010 using namespace std; vector<int>G[maxn],rG[maxn],cmp[maxn],vs; int...