CSES - HIIT Open 2019 - Results
Submission details
Task:Many Cycles
Sender:Varokaa J:tä
Submission time:2019-05-25 11:33:20 +0300
Language:C++
Status:READY
Result:
Test results
testverdicttime
#10.05 sdetails
#20.02 sdetails

Code

#include <iostream>
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define N 1010
vector<int> v[N];
int t[N], h[N];
bool f = 0;
bool haku(int s, int hh){
h[s] = hh;
int k = t[s];
for(int i : v[s]){
if(h[i] == 0){
k += haku(i, hh+1);
}else if(h[i] < hh-1) {
t[i] -= 1;
++k;
}
}
if(k > 1) f = 1;
return k;
}
int main() {
int T; cin >> T;
while(T--){
int n, m; cin >> n >> m;
for(int i=1; i<=n; ++i) {
v[i].clear();
h[i] = t[i] = 0;
}
for(int i=0; i<m; ++i){
int a, b; cin >> a >> b;
v[a].push_back(b);
v[b].push_back(a);
}
f=0;
for(int i=1; i<=n; ++i) if(!h[i]) haku(i, 1);
if(f) cout << "YES\n";
else cout << "NO\n";
}
}

Test details

Test 1

Verdict:

input
1000
100 78
97 68
75 90
58 80
...

correct output
YES
YES
YES
YES
NO
...

user output
YES
YES
YES
YES
NO
...
Truncated

Test 2

Verdict:

input
11
2 1
1 2
6 6
1 2
...

correct output
NO
NO
NO
YES
YES
...

user output
NO
NO
YES
YES
YES
...