# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
594381 | 2022-07-12T11:28:10 Z | andrei_boaca | Potemkin cycle (CEOI15_indcyc) | C++14 | 987 ms | 1868 KB |
#include <bits/stdc++.h> //#pragma GCC optimize("O3") using namespace std; mt19937 rng(time(NULL)); vector<int> muchii[1005]; bool adj[1005][1005]; auto S=chrono::steady_clock::now(); int n,m; vector<int> v; int use[1005]; int start=0; void dfs(int nod) { auto E=chrono::steady_clock::now(); int x=chrono::duration_cast<chrono::milliseconds>(E - S).count(); if(v.size()>=21) return; if(x>=990) { cout<<"no"; exit(0); } use[nod]=v.size(); bool good=1; int pmax=0; int pmin=1e9; vector<int> mypoz; for(int i:muchii[nod]) { if(use[i]) { if(i==v[v.size()-2]) continue; if(i==start) { if(v.size()>=4); else good=0; } else if(i!=v[v.size()-2]) good=0; pmax=max(pmax,use[i]); pmin=min(pmin,use[i]); mypoz.push_back(use[i]); } } sort(mypoz.begin(),mypoz.end()); if(v.size()-pmax+1>=4&&pmax!=0) { for(int i=pmax-1;i<v.size();i++) cout<<v[i]<<' '; exit(0); } if(adj[nod][start]&&pmin+1>=4&&pmin!=1e9) { for(int i=0;i<pmin;i++) cout<<v[i]<<' '; cout<<nod; exit(0); } for(int i=1;i<mypoz.size();i++) { int st=mypoz[i-1]; int dr=mypoz[i]; if(dr-st+2>=4) { for(int j=st-1;j<dr;j++) cout<<v[j]<<' '; cout<<nod; exit(0); } } if(good) { for(int i:muchii[nod]) if(!use[i]) { v.push_back(i); dfs(i); use[i]=0; v.pop_back(); } } } int main() { cin>>n>>m; for(int i=1;i<=m;i++) { int a,b; cin>>a>>b; muchii[a].push_back(b); muchii[b].push_back(a); adj[a][b]=adj[b][a]=1; } for(int i=1;i<=n;i++) shuffle(muchii[i].begin(),muchii[i].end(),rng); vector<int> nodes; for(int i=1;i<=n;i++) nodes.push_back(i); shuffle(nodes.begin(),nodes.end(),rng); for(int i:nodes) { start=i; v.clear(); v.push_back(i); for(int j=1;j<=n;j++) use[j]=0; dfs(i); } cout<<"no"; return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 340 KB | Output is correct |
2 | Correct | 1 ms | 340 KB | Output is correct |
3 | Correct | 0 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 340 KB | Output is correct |
5 | Correct | 0 ms | 340 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 340 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 340 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 340 KB | Output is correct |
2 | Correct | 557 ms | 440 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 979 ms | 684 KB | Output is correct |
2 | Correct | 26 ms | 596 KB | Output is correct |
3 | Correct | 24 ms | 596 KB | Output is correct |
4 | Correct | 984 ms | 696 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 7 ms | 596 KB | Output is correct |
2 | Correct | 987 ms | 656 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 977 ms | 1868 KB | Expected integer, but "no" found |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 116 ms | 1604 KB | Output is correct |
2 | Correct | 985 ms | 1584 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 980 ms | 1768 KB | Expected integer, but "no" found |
2 | Halted | 0 ms | 0 KB | - |