Submission #109016

#TimeUsernameProblemLanguageResultExecution timeMemory
109016thebesSenior Postmen (BOI14_postmen)C++14
0 / 100
1086 ms12160 KiB
#include <bits/stdc++.h> using namespace std; const int MN = 5e5+5; int mo[MN], f, n, m, i, x, y, st[MN], rt; vector<pair<int,int>> adj[MN]; stack<pair<int,int>> s; void dfs(int n,int p){ st[n] = 1; s.push({n,p}); for(auto v : adj[n]){ if(f) break; if(v.second==p||mo[v.second]) continue; if(st[v.first]&&v.first==rt){ f = 1; mo[v.second]=1; while(s.size()){ mo[s.top().second]=1; printf("%d ",s.top().first); s.pop(); } printf("\n"); } else if(!st[v.first]) dfs(v.first, v.second); if(f) break; } if(s.size()&&s.top().first==n) s.pop(); st[n] = 0; } int main(){ for(scanf("%d%d",&n,&m),i=1;i<=m;i++){ scanf("%d%d",&x,&y); adj[x].push_back({y,i}); adj[y].push_back({x,i}); } i=1; while(i<=n){ f=0; rt=i; dfs(i,0); if(!f) i++; } return 0; }

Compilation message (stderr)

postmen.cpp: In function 'int main()':
postmen.cpp:32:28: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     for(scanf("%d%d",&n,&m),i=1;i<=m;i++){
         ~~~~~~~~~~~~~~~~~~~^~~~
postmen.cpp:33:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d%d",&x,&y);
         ~~~~~^~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...