Submission #25995

#TimeUsernameProblemLanguageResultExecution timeMemory
25995H_HSenior Postmen (BOI14_postmen)C++14
55 / 100
553 ms57592 KiB
#include <bits/stdc++.h> using namespace std; const int MAXN=500005; bool vis[MAXN]; bool vs[MAXN]; vector<pair<int,int> >adj[MAXN]; int it[MAXN]; int n,m; int cyc=-1; void dfs(int x) { vis[x]=true; while(it[x]<adj[x].size()) { int i=it[x]; int y=adj[x][i].first; int in=adj[x][i].second; if(vs[in]) { it[x]++; continue; } it[x]++; vs[in]=true; if(vis[y]) { printf("%d",x); cyc=y; break; } dfs(y); if(cyc!=-1) { printf(" %d",x); if(cyc==x) { printf("\n"); cyc=-1; } else break; } } vis[x]=false; } int main() { scanf("%d%d",&n,&m); for(int i=0;i<m;i++) { int x,y; scanf("%d%d",&x,&y); adj[x].push_back({y,i}); adj[y].push_back({x,i}); } for(int i=1;i<=n;i++)dfs(i); return 0; }

Compilation message (stderr)

postmen.cpp: In function 'void dfs(int)':
postmen.cpp:17:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  while(it[x]<adj[x].size())
        ~~~~~^~~~~~~~~~~~~~
postmen.cpp: In function 'int main()':
postmen.cpp:52:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d",&n,&m);
  ~~~~~^~~~~~~~~~~~~~
postmen.cpp:56:8: 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...