Submission #115984

#TimeUsernameProblemLanguageResultExecution timeMemory
115984ckodserSenior Postmen (BOI14_postmen)C++14
55 / 100
592 ms71436 KiB
#include<bits/stdc++.h> #define ll int #define pb push_back #define mp make_pair #define ld long double #define F first #define S second #define pii pair<ll,ll> using namespace :: std; const ll mod=1e9+7; const ll maxn=5e5+500; const ll inf=1e9+900; vector<ll> ger[maxn]; ll s[maxn]; ll t[maxn]; bool vis[maxn]; ll l[maxn]; vector<ll> ans; bool inAns[maxn]; void dfs(ll a){ while(l[a]<ger[a].size()){ if(vis[ger[a][l[a]]]){ l[a]++; }else{ ll e=ger[a][l[a]]; vis[e]=1; dfs(s[e]^t[e]^a); } } if(inAns[a]){ while(ans.back()!=a){ cout<<ans.back()<<' '; inAns[ans.back()]=0; ans.pop_back(); } cout<<a<<endl; }else{ ans.pb(a); inAns[a]=1; } } int main(){ ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); ll n,m; cin>>n>>m; for(ll i=0;i<m;i++){ cin>>s[i]>>t[i]; ger[s[i]].pb(i); ger[t[i]].pb(i); } dfs(1); }

Compilation message (stderr)

postmen.cpp: In function 'void dfs(int)':
postmen.cpp:26:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     while(l[a]<ger[a].size()){
           ~~~~^~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...