6684 | 2023. 12. 16 14:08:08 | 111 | Utazás (40) | cpp17 | Elfogadva 40/40 | 54ms | 10288 KiB |
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define double long double
#define pii pair<int, int>
signed main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
#ifdef CB
freopen("be2.txt", "r", stdin);
// freopen("out.txt", "w", stdout);
#endif
int N, M, Q;
cin >> N >> M >> Q;
vector<int> q(Q);
for (int i = 0; i < Q; i++) {
cin >> q[i];
}
vector<vector<int>> g(N + 1);
vector<int> c(N + 1);
for (int i = 0; i < M; i++) {
int a, b;
cin >> a >> b;
g[a].push_back(b);
c[b]++;
}
vector<int> s;
auto dfs = [&](auto dfs, int i) {
if (c[i]) {
return;
}
c[i]--;
s.push_back(i);
for (int j : g[i]) {
c[j]--;
dfs(dfs, j);
}
};
for (int i = 1; i <= N; i++) {
dfs(dfs, i);
}
reverse(s.begin(), s.end());
vector<char> a(N + 1);
for (int i : s) {
a[i] = 'B';
for (int j : g[i]) {
if (a[j] == 'B') {
a[i] = 'A';
}
}
}
for (int i : q) {
cout << a[i] << '\n';
}
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 40/40 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1832 KiB | |||
2 | Elfogadva | 0/0 | 41ms | 9760 KiB | |||
3 | Elfogadva | 1/1 | 3ms | 2264 KiB | |||
4 | Elfogadva | 2/2 | 3ms | 2336 KiB | |||
5 | Elfogadva | 1/1 | 3ms | 2464 KiB | |||
6 | Elfogadva | 2/2 | 3ms | 2548 KiB | |||
7 | Elfogadva | 2/2 | 4ms | 2784 KiB | |||
8 | Elfogadva | 2/2 | 6ms | 3704 KiB | |||
9 | Elfogadva | 2/2 | 4ms | 3308 KiB | |||
10 | Elfogadva | 2/2 | 6ms | 3688 KiB | |||
11 | Elfogadva | 2/2 | 14ms | 4916 KiB | |||
12 | Elfogadva | 3/3 | 16ms | 5332 KiB | |||
13 | Elfogadva | 3/3 | 16ms | 5404 KiB | |||
14 | Elfogadva | 3/3 | 16ms | 5536 KiB | |||
15 | Elfogadva | 3/3 | 17ms | 5520 KiB | |||
16 | Elfogadva | 3/3 | 17ms | 5636 KiB | |||
17 | Elfogadva | 3/3 | 29ms | 7484 KiB | |||
18 | Elfogadva | 3/3 | 52ms | 10288 KiB | |||
19 | Elfogadva | 3/3 | 54ms | 10284 KiB |