Submission #89031

#TimeUsernameProblemLanguageResultExecution timeMemory
89031beso123Special graph (IZhO13_specialg)C++14
0 / 100
1055 ms1560 KiB
#include <bits/stdc++.h> using namespace std; int n,p[100001],q,d=1; int used[100001]; int DFS(int v,int h){ used[v]=d; queue <int> q; q.push(v); int cnt=0; while(!q.empty()){ v=q.front(); q.pop(); if(v==h){ return cnt; } used[v]=d; if(used[p[v]]!=d && p[v]!=0) q.push(p[v]); cnt++; } if(used[h]!=d) return -1; } vector <int > v; int main(){ cin>>n; for(int k=1;k<=n;k++) cin>>p[k]; cin>>q; for(int k=1;k<=q;k++){ int a; cin>>a; if(a==1){ int b; cin>>b; p[b]=0; } if(a==2){ int b,c; cin>>b>>c; d++; v.push_back(DFS(b,c)); } } int g=v.size(); for(int k=0;k<g;k++) cout<<v[k]<<endl; return 0; }

Compilation message (stderr)

specialg.cpp: In function 'int DFS(int, int)':
specialg.cpp:23:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
#Verdict Execution timeMemoryGrader output
Fetching results...