Submission #1237453

#TimeUsernameProblemLanguageResultExecution timeMemory
1237453d4nnaeeKutije (COCI21_kutije)C++20
70 / 70
601 ms10816 KiB
#include <bits/stdc++.h> using namespace std; const int MAXN = 1005; vector<int> adj[MAXN]; int component[MAXN]; bool visited[MAXN]; void dfs(int u, int id) { visited[u] = true; component[u] = id; for (int v : adj[u]) { if (!visited[v]) { dfs(v, id); } } } int main() { int n, m, q; cin >> n >> m >> q; for (int k = 0; k < m; ++k) { vector<int> p(n + 1); for (int i = 1; i <= n; ++i) { cin >> p[i]; } for (int i = 1; i <= n; ++i) { adj[i].push_back(p[i]); adj[p[i]].push_back(i); } } int id = 0; for (int i = 1; i <= n; ++i) { if (!visited[i]) { ++id; dfs(i, id); } } while (q--) { int a, b; cin >> a >> b; if (component[a] == component[b]) { cout << "DA"<<"\n"; } else { cout << "NE"<<"\n"; } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...