Submission #92880

#TimeUsernameProblemLanguageResultExecution timeMemory
92880emil_physmathSpecial graph (IZhO13_specialg)C++17
0 / 100
1079 ms3356 KiB
#include <iostream> #include <stdio.h> #include <cstring> using namespace std; int nei[100005]; bool used[100005]; int DFS(int u, int v, int curAns=0); int main() { int n, q; cin>>n; for (int u=1; u<=n; u++) cin>>nei[u]; cin>>q; while (q--) { int type, u, v; cin>>type; if (type==1) { cin>>u; nei[u]=0; } else { cin>>u>>v; memset(used+1, 0, n); cout<<DFS(u, v)<<'\n'; } } char I; cin >> I; return 0; } int DFS(int u, int v, int curAns) { used[u]=true; if (u==v) return curAns; if (!nei[u] || used[nei[u]]) return -1; int temp=DFS(nei[u], v); return temp==-1?-1:temp+1; }
#Verdict Execution timeMemoryGrader output
Fetching results...