Submission #1178456

#TimeUsernameProblemLanguageResultExecution timeMemory
1178456AgageldiSeptember (APIO24_september)C++20
0 / 100
12 ms23876 KiB
#include "bits/stdc++.h"
#include "september.h"
// #include "stub.cpp"
using namespace std;

#define SZ(v) (int)v.size()
#define ll long long
#define MAX_N 500005

ll n, vis[MAX_N], ans;
set <int> v[MAX_N];

void solve(int x) {
	vis[x] = 1;
	for(auto i : v[x]) {
		if(vis[i]) continue;
		solve(i);
	}
	v[x].clear();
}

int solve(int N, int M, vector<int> F, vector<vector<int>> S) {
	for(int i = 1;i <= N; i++) {
		v[i].clear();
		vis[i] = 0;
	}
	ans = 0;
	for(int i = 1; i < N; i++) {
		v[i].insert(F[i]);
	}
	for(int i = 0; i < SZ(S[0]); i++) {
		if(vis[S[0][i]]) continue;
		ans++;
		solve(S[0][i]);
	}
	return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...