Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- freopen("warcraft.in", "r", stdin);
- freopen("warcraft.out", "w", stdout);
- int nr, a, b, k, n2, scount, nrcc(0);
- scanf("%d%d%d", &n, &m, &x);
- for(int i = 1; i <= n; i++) {
- scanf("%d%d%d", &a, &b, &k);
- parent[a] = b;
- if(b != 0) {
- g[a].push_back(b);
- g[b].push_back(a);
- } else capetenie[a] = true; // atentie aici
- for(int j = 1; j <= k; j++) {
- scanf("%d", &nr);
- powers[a].push_back(nr);
- }
- }
- for(int i = 1; i <= n; i++) {
- if(!visited[i] && capetenie[i]) { // si aici
- is_ok = false;
- nrcc++;
- scount = 0;
- c[nrcc].warchief = i;
- DFS(i, scount, nrcc);
- // in rest am cealalta cerinta
- // ce spun e ca nu trebuie sa faci dfs din toate nodurile nevizitate, ci doar din capetenii
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement