wa+re求调
查看原帖
wa+re求调
1112829
cyb89楼主2024/8/16 11:49
#include<bits/stdc++.h>
using namespace std;int n,m;
int q;int a[100100];
int findf(int k)
{
	if(a[k]==k)return k;
	return a[k]=findf(a[k]);
}
void hebing(int x,int y)
{
	int fx=findf(x);
	int fy=findf(y);
	if(fx!=fy)a[fx]=fy;
}

int main()
{
	
	int n,m;
	cin>>n>>m;
	for (int i=1;i<=2*n;i++)a[i]=i;
	for (int i=1;i<=m;i++)
	{
		int xr,yr;
		char w;
		cin>>w>>xr>>yr;
		if(w=='F')
		{
			hebing(xr,yr);
		}
		else{
			hebing (yr,xr+n);
			hebing (xr,yr+n);
		}
	}
	vector<bool>f(n+1,false);
	int ans=0;
	for (int i=1;i<=n;i++)
	{
		int root=findf(a[i]);
		if(!f[root])
		{
			ans++;
			f[root]=true;
		}
	}
	cout<<ans;
	return 0;
}
2024/8/16 11:49
加载中...