蒟蒻求助,不是#1#2WA就是#3#4WA
查看原帖
蒟蒻求助,不是#1#2WA就是#3#4WA
759274
Stevehim楼主2022/8/26 16:18
#include <cstdio>
#include <cstring>
#include <iostream>
#include <cmath>
#include <algorithm>
#include <string>
#define maxn 20010
#include <map>
using namespace std;
typedef long long ll;
map<string,string> a;
int n;
ll k,m;

string find(string x){
	if(x == a[x]){
		return a[x];
	}
	return a[x] = find(a[x]);
}

void join(string x, string y){
	if(find(x) != find(y)){
		a[y] = x;
	}
}

int main()
{ 
	string s;
	cin >> n >> m;
	for(int i = 1; i <= n; i++){
		cin >> s;
		a[s] = s;
	}
	string s1,s2;
	for(ll i = 1; i <= m; i++){
		cin >> s1 >> s2;
		join(s1,s2);
	}
	cin >> k;
	for(int i = 0; i < k; i++){
		cin >> s1 >> s2;
		if(find(s1) == find(s2)){
			cout << "Yes." <<endl;
		}else{
			cout << "No." << endl;
		}
	}
    return 0;
}

2022/8/26 16:18
加载中...