This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
int n, e, a, b, sz = 1e9;
cin >> n >> e;
int adj[n][n];
memset(adj, 0, sizeof(adj));
for(int i = 0; i < e; i++) {
cin >> a >> b;
if(a == b) continue;
a--; b--;
adj[a][b] = 1;
adj[b][a] = 1;
}
vector<int> v, ans;
for(int i = 0; i < (1<<n); i++) {
v.clear();
for(int j = 0; j < n; j++) {
if(i & (1<<j)) v.push_back(j);
}
if(v.size() < 4) continue;
int cnt[v.size()];
memset(cnt, 0, sizeof(cnt));
for(int i = 0; i < v.size(); i++) {
for(int j = 0; j < v.size(); j++) {
if(adj[v[i]][v[j]]) cnt[i]++;
}
}
for(int i = 0; i < v.size(); i++) if(cnt[i] != 2) goto end2;
for(int i = 0; i < v.size(); i++) {
for(int j = 0; j < v.size(); j++) {
for(int k = 0; k < v.size(); k++) {
if(adj[v[i]][v[j]] && adj[v[j]][v[k]] && adj[v[k]][v[i]]) {
goto end2;
}
}
}
}
if(v.size() < sz) {
sz = v.size();
ans.clear();
for(int i : v) ans.push_back(i);
}
end2:;
}
if(sz == 1e9) cout << "no";
else for(int i : ans) cout << i+1 << " ";
}
Compilation message (stderr)
indcyc.cpp: In function 'int main()':
indcyc.cpp:27:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
27 | for(int i = 0; i < v.size(); i++) {
| ~~^~~~~~~~~~
indcyc.cpp:28:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
28 | for(int j = 0; j < v.size(); j++) {
| ~~^~~~~~~~~~
indcyc.cpp:32:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
32 | for(int i = 0; i < v.size(); i++) if(cnt[i] != 2) goto end2;
| ~~^~~~~~~~~~
indcyc.cpp:33:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
33 | for(int i = 0; i < v.size(); i++) {
| ~~^~~~~~~~~~
indcyc.cpp:34:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
34 | for(int j = 0; j < v.size(); j++) {
| ~~^~~~~~~~~~
indcyc.cpp:35:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
35 | for(int k = 0; k < v.size(); k++) {
| ~~^~~~~~~~~~
indcyc.cpp:42:15: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
42 | if(v.size() < sz) {
| ~~~~~~~~~^~~~
indcyc.cpp:25:7: warning: argument to variable-length array may be too large [-Wvla-larger-than=]
25 | int cnt[v.size()];
| ^~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |