20分求助
查看原帖
20分求助
931394
zjy102512楼主2024/3/19 22:02
#include<iostream>
#include<cmath>
#include<cstring>
#include<vector>
using namespace std;
int n,m;
int x,y;
vector<int>a[100005];
long long ans=0;
int ns=0;
bool check[100005];
int num[10];
bool f=0; 
void dfs(int now,int deep)
{
	if(deep==2)
	{
		ans++;
		return;
	}
	for(int i=0;i<int(a[now].size());i++)
	{
		if(check[a[now][i]]==0)
		{
			check[a[now][i]]=1;
			dfs(a[now][i],deep+1);
			check[a[now][i]]=0;
		}
	}
	return;
}
int main()
{
	cin>>n>>m;
	for(int i=1;i<=m;i++)
	{
		cin>>x>>y;
		a[x].push_back(y);
		a[y].push_back(x);
	}
	for(int i=1;i<=n;i++)
	{
		check[i]=1;
		dfs(i,0);
		memset(check,0,sizeof(check));
	}
	cout<<ans<<endl;
	return 0;
}

1AC 2345WA +6TLE

2024/3/19 22:02
加载中...