Submission #389201

#TimeUsernameProblemLanguageResultExecution timeMemory
389201Ahmad_HasanPotemkin cycle (CEOI15_indcyc)C++17
30 / 100
1081 ms1988 KiB
#include <bits/stdc++.h> using namespace std; vector<vector<int> > adj; vector<int>vis,inst; stack<int>s; int f=0; bool check(int f,int t){ for(int i=0;i<adj[f].size();i++){ if(adj[f][i]==t) return true; } return false; } void dfs(int cr,int p=-1){ /// cout<<cr<<' '<<p<<'\n'; vis[cr]=1; s.push(cr); inst[cr]=1; for(int i=0;i<adj[cr].size()&&!f;i++){ int nw=adj[cr][i]; if(inst[nw]&&nw!=p&&!check(nw,p)){ f=1; ///cout<<'h'<<'\n'; while(s.top()!=nw){ cout<<s.top()<<' '; if(s.top()!=p&&check(cr,s.top())){ cout<<'\n'; return; } s.pop(); } /// cout<<s.top()<<'#'<<'\n'; return; }else if(!vis[nw]){ if(!check(nw,p)){ dfs(nw,cr); } } } if(f) return; inst[cr]=0; s.pop(); } int32_t main() {/** ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);*/ int n,m; cin>>n>>m; adj.resize(n+5); vis=vector<int>(n+5); for(int i=0;i<m;i++){ int x,y; cin>>x>>y; adj[x].push_back(y); adj[y].push_back(x); } for(int i=1;i<=n;i++){ s=stack<int>(); inst=vis=vector<int>(n+5); dfs(i); } if(!f) cout<<"no\n"; return 0; }

Compilation message (stderr)

indcyc.cpp: In function 'bool check(int, int)':
indcyc.cpp:11:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 |     for(int i=0;i<adj[f].size();i++){
      |                 ~^~~~~~~~~~~~~~
indcyc.cpp: In function 'void dfs(int, int)':
indcyc.cpp:22:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |     for(int i=0;i<adj[cr].size()&&!f;i++){
      |                 ~^~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...