2020.10.28 Universal Group 3 (Team School Net) Pregunta 6 (dfs)

Simulación 3

6.POPULAR

Límite de tiempo: 5000MS
Límite de memoria: 256000KB

Descripción del título
Cada vaca tiene un sueño: ¡convertirse en la vaca más popular de un grupo! En un rebaño con N (1 <= N <= 10,000) vacas, dé M (1 <= M <= 50,000) dos tuplas (A, B), lo que indica que A piensa que B es popular. Dado que la popularidad es transferible, si A piensa que B es popular y B cree que C es popular, A también pensará que C es popular, incluso si esta no es una regla muy clara. Su tarea es contar el número de vacas que agradan a todas las demás vacas.

Ingrese la
primera línea, dos números, N y M. Las líneas 2 ~ M + 1 tienen dos números en cada línea, A y B, lo que indica que A piensa que B es popular.

Genere
un número, el número de vacas consideradas populares por todas las demás vacas.

Muestra de entrada
3

1 2

2 1

2 3

Salida de muestra
1

El ejemplo muestra que la
vaca No. 3 es la única vaca considerada famosa por todas las demás vacas.

Explique que el
límite del rango de datos es
1 <= N <= 10,000;

1 <= M <= 50 000

Ideas para resolver problemas

Es decir, cada punto de violencia dfs
podrá llegar al punto + 1 y
finalmente juzgar cuántos puntos son n-1
. El número de puntos es la respuesta

Código AC

#include<cstdio>
#include<cstring>
using namespace std;
int n,m,tot,ans,c[10005],f[10005],head[10005];
struct node
{
    
    
	int to,next;
}a[50005];
void add(int x,int y)
{
    
    
	a[++tot]=(node){
    
    y,head[x]};
	head[x]=tot;
}
void dfs(int x)//dfs
{
    
    
	c[x]=1;//标记
	for(int i=head[x];i;i=a[i].next)
	 if(c[a[i].to]==0)
	 {
    
    
		f[a[i].to]++;
		dfs(a[i].to);
	 }
	return;
}
int main()
{
    
    
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;i++)
	{
    
    
		int x,y;
		scanf("%d%d",&x,&y);
		add(x,y);//建单向图
	}
	for(int i=1;i<=n;i++)
	{
    
    
		memset(c,0,sizeof(c));
		dfs(i);//暴搜
	}
	for(int i=1;i<=n;i++)
	 if(f[i]==n-1)ans++;//求点的数量
	printf("%d",ans);
	return 0;
}

Gracias

Supongo que te gusta

Origin blog.csdn.net/weixin_45524309/article/details/109397498
Recomendado
Clasificación