问个问题
查看原帖
问个问题
560318
Terminator_SHH楼主2022/8/21 16:23

求看第67行

#include <bits/stdc++.h>
//#define int long long
using namespace std;
namespace IO{
	template<typename T>inline void read(T &x){
	    x=0;int w=1;char ch=getchar();
	    while (!isdigit(ch)) { if(ch=='-') w=-1;ch=getchar(); }
	    while (isdigit(ch)) x=(x<<1)+(x<<3)+(ch^48),ch=getchar();
	    x=(w==1?x:(~x+1));}
	template<typename T>inline void write(T x){
		if(x<0){putchar('-'),x=-x;}
	    if(x==0){putchar('0');return ;}
	    if(x>9)write(x/10);
	    putchar(x%10+'0');return ;}
	#define writesp(x) write(x),putchar(' ')
	#define writeln(x) write(x),putchar(10)
	template<typename T,typename... Args>inline void read(T &x,Args &... args){ read(x),read(args...); }
	template<typename T,typename... Args>inline void write_sp(T& x,Args &... args){ writesp(x),writesp(args...); }
	template<typename T,typename... Args>inline void write_ln(T& x,Args &... args){ writeln(x),writeln(args...); }
	template<typename T>inline int Abs(T &x){return x^(x>>31)-(x>>31);}
	template<typename T>inline void Swap(T &a,T &b){a=a^b;b=a^b;a=a^b;}
	template<typename T>inline int operator%(const T& a,const T& b){return a&b-1;}
	#define IOS ios::sync_with_stdio(false)
    #define noties cin.tie(nullptr);cout.tie(nullptr)
	#define For(i,j,k) for(int i=(j);i<=(k);++i)
}using namespace IO;
namespace Union_Find_Set
{
	const int maxlen=210;
	int Set[maxlen];
	void Reset()
	{
		for(int i=1;i<maxlen;i++)
			Set[i]=i;
	}
	int Find(int t)
	{
		if(t!=Set[t])Set[t]=Find(Set[t]);
		return Set[t];
	}
	void Union(int r1,int r2)
	{
		r1=Find(r1);r2=Find(r2);
		if(r1!=r2)Set[r2]=r1;
	}
}using namespace Union_Find_Set;

int N;
bool t[maxlen][maxlen];
signed main()
{
    Reset();
    IOS;noties;
	cin>>N;
	For(i,1,N)
	{
		int k;
		while(cin>>k && k!=0)
			t[i][k]=true;
	}int ans=0;
    For(k,1,N)For(i,1,N)For(j,1,N)
    {
        if(t[i][k]&&t[k][j])t[i][j]=true;
    }
    For(i,1,N)For(j,1,N)
    {
        if(t[i][j])Set[j]=Set[i];//Union(i,j);为啥不行
    }
	For(i,1,N)
	{
		if(Set[i]==i)ans++;
	}
	cout<<ans;
	return 0;
}
2022/8/21 16:23
加载中...