Submission #231023

#TimeUsernameProblemLanguageResultExecution timeMemory
231023PajarajaSenior Postmen (BOI14_postmen)C++17
38 / 100
1092 ms20088 KiB
#include <bits/stdc++.h> #pragma GCC optimize("O3") using namespace std; vector<pair<int,int> > g[500007]; stack<int> st,sk; bool vi[500007],vig[500007]; inline void euler(int s) { for(int i=0;i<g[s].size();i++) if(!vig[g[s][i].second]) { vig[g[s][i].second]=true; euler(g[s][i].first); } st.push(s); } int main() { int n,m; scanf("%d%d",&n,&m); for(int i=0;i<m;i++) { int t1,t2; scanf("%d%d",&t1,&t2); g[t1].push_back({t2,i}); g[t2].push_back({t1,i}); } euler(1); for(int i=0;i<m+1;i++) { int x=st.top(); st.pop(); if(vi[x]) { while(true) { int y=sk.top(); printf("%d ",y); sk.pop(); vi[y]=false; if(y==x) break; } printf("\n"); } sk.push(x); vi[x]=true; } }

Compilation message (stderr)

postmen.cpp: In function 'void euler(int)':
postmen.cpp:9:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<g[s].size();i++) if(!vig[g[s][i].second])
              ~^~~~~~~~~~~~
postmen.cpp: In function 'int main()':
postmen.cpp:19: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:23:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d",&t1,&t2);
   ~~~~~^~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...