11202022-03-04 08:48:17kidesoSportos nyaraláscpp14Időlimit túllépés 16/401.09s19860 KiB
#include <iostream>
#include <vector>
#include <queue>

using namespace std;

vector<vector<int> > p, z;
vector<int> pk, zk, ans;
vector<bool> lp, lz;
int N, P, Z;

void szelp(int kp, int s) {
	queue<int> y;
	lp[kp] = true;
	pk[kp]=s;
	y.push(kp);

	while (!y.empty()) {
		int csp = y.front();
		y.pop();

		for (auto e : p[csp])
			if(!lp[e]) {
				lp[e] = true;
				pk[e] = s;
				y.push(e);
			}
	}
}
void szelz(int kp, int s) {
	queue<int> y;
	lz[kp] = true;
	zk[kp]=s;
	y.push(kp);

	while (!y.empty()) {
		int csp = y.front();
		y.pop();

		for (auto e : z[csp])
			if(!lz[e]) {
				lz[e] = true;
				zk[e] = s;
				y.push(e);
			}
	}
}

int main()
{
	cin >> N >> P >> Z;

	p.resize(N + 1), z.resize(N + 1);
	pk.resize(N + 1), zk.resize(N + 1), ans.resize(N + 1);
    lz.resize(N+1,false), lp.resize(N+1,false);

	for (int i = 1; i <= P; ++i) {
		int a, b;
		cin >> a >> b;
		p[a].push_back(b), p[b].push_back(a);
	}

	for (int i = 1; i <= Z; ++i) {
		int a, b;
		cin >> a >> b;
		z[a].push_back(b), z[b].push_back(a);
	}

	int ps=1, zs=1;
    for(int i=1;i<=N;++i){
        if(!lp[i]){
            szelp(i,ps);
            ++ps;
        }

        if(!lz[i]){
            szelz(i,zs);
            ++zs;
        }
    }

    for(int i=1;i<=N;++i)
        for(int j=1;j<=N;++j)
        if(i!=j && pk[i]*pk[j]!=0 && zk[i]*zk[j]!=0){
            if(pk[i]==pk[j] && zk[i]==zk[j]) ++ans[i];
        }

    for(int i=1;i<=N;++i)
        cout<<ans[i]<<' ';

	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base16/40
1Elfogadva0/02ms1740 KiB
2Időlimit túllépés0/01.069s8524 KiB
3Elfogadva1/11ms3264 KiB
4Elfogadva1/11ms3264 KiB
5Elfogadva1/11ms3268 KiB
6Elfogadva1/11ms3276 KiB
7Elfogadva1/11ms3288 KiB
8Elfogadva1/11ms3288 KiB
9Elfogadva1/11ms3288 KiB
10Elfogadva1/14ms3356 KiB
11Elfogadva2/26ms3600 KiB
12Elfogadva2/24ms3588 KiB
13Elfogadva2/217ms4480 KiB
14Elfogadva2/216ms4332 KiB
15Időlimit túllépés0/21.069s6476 KiB
16Időlimit túllépés0/21.09s8256 KiB
17Időlimit túllépés0/31.044s9912 KiB
18Időlimit túllépés0/31.021s9244 KiB
19Időlimit túllépés0/21.041s8648 KiB
20Időlimit túllépés0/21.042s11500 KiB
21Időlimit túllépés0/21.059s13604 KiB
22Időlimit túllépés0/21.074s14400 KiB
23Időlimit túllépés0/31.082s17024 KiB
24Időlimit túllépés0/31.082s19860 KiB