#include<bits/stdc++.h>
using namespace std;
bool dfs(int s,const vector<vector<int>> &adj,vector<bool> &vis,vector<bool> &stack_n){
vis[s]=true;
stack_n[s]=true;
for(int ngb:adj[s]){
if(vis[ngb]==false){
if(dfs(ngb,adj,vis,stack_n)){
return true;
break;
}
}else{
if(stack_n[ngb]=true){
return true;
}
}
}
stack_n[s]=false;
return false;
}
int main(){
int v,e;
cin>>v>>e;
vector<vector<int>> adj(v);
for(int i=0;i<e;i++){
int a;
int b;
cin>>a>>b;
adj[a].push_back(b);
}
bool flag=false;
vector<bool> vis(v,false);
vector<bool> stack_n(v,false);
for(int i=0;i<v;i++){
if(vis[i]==false){
if(dfs(i,adj,vis,stack_n)){
flag=true;
break;
}
}
}
if(flag){
cout<<"cycle";
}else{
cout<<"no cycle";
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKYm9vbCBkZnMoaW50IHMsY29uc3QgdmVjdG9yPHZlY3RvcjxpbnQ+PiAmYWRqLHZlY3Rvcjxib29sPiAmdmlzLHZlY3Rvcjxib29sPiAmc3RhY2tfbil7Cgl2aXNbc109dHJ1ZTsKCXN0YWNrX25bc109dHJ1ZTsKCWZvcihpbnQgbmdiOmFkaltzXSl7CgkJaWYodmlzW25nYl09PWZhbHNlKXsKCQkJaWYoZGZzKG5nYixhZGosdmlzLHN0YWNrX24pKXsKCQkJCXJldHVybiB0cnVlOwoJCQkJYnJlYWs7CgkJCX0KCQl9ZWxzZXsKCQkJaWYoc3RhY2tfbltuZ2JdPXRydWUpewoJCQkJcmV0dXJuIHRydWU7CgkJCX0KCQl9Cgl9CglzdGFja19uW3NdPWZhbHNlOwoJcmV0dXJuIGZhbHNlOwp9CmludCBtYWluKCl7CglpbnQgdixlOwoJY2luPj52Pj5lOwoJdmVjdG9yPHZlY3RvcjxpbnQ+PiBhZGoodik7Cglmb3IoaW50IGk9MDtpPGU7aSsrKXsKCQlpbnQgYTsKCQlpbnQgYjsKCQljaW4+PmE+PmI7CgkJYWRqW2FdLnB1c2hfYmFjayhiKTsKCX0KCWJvb2wgZmxhZz1mYWxzZTsKCXZlY3Rvcjxib29sPiB2aXModixmYWxzZSk7Cgl2ZWN0b3I8Ym9vbD4gc3RhY2tfbih2LGZhbHNlKTsKCWZvcihpbnQgaT0wO2k8djtpKyspewoJCWlmKHZpc1tpXT09ZmFsc2UpewoJCQlpZihkZnMoaSxhZGosdmlzLHN0YWNrX24pKXsKCQkJCWZsYWc9dHJ1ZTsKCQkJCWJyZWFrOwoJCQl9CgkJfQoJfQoJaWYoZmxhZyl7CgkJY291dDw8ImN5Y2xlIjsKCX1lbHNlewoJCWNvdXQ8PCJubyBjeWNsZSI7Cgl9Cn0=