#include #define int long long #define MAXN 105 using namespace std; inline int read(){ int x=0,f=1; char ch=getchar(); while(ch<'0'||ch>'9'){ if(ch=='-') f=-1; ch=getchar(); } while(ch>='0'&&ch<='9'){ x=x*10+ch-48; ch=getchar(); } return x*f; } bool check1(bool graph[MAXN][MAXN],int a,int b,int c,int d){ int node[4]={a,b,c,d}; for(int i=0;i<4;i++){ for(int j=i+1;j<4;j++){ for(int k=j+1;k<4;k++){ int u=node[i],v=node[j],w=node[k]; if(graph[u][v] && graph[v][w] && graph[w][u]){ return 1; } } } } return 0; } bool check2(bool graph[MAXN][MAXN],int a,int b,int c,int d){ int node[4]={a,b,c,d}; do{ bool flag=1; for(int i=0;i<4;i++){ int u=node[i],v=node[(i+1)%4]; if(!graph[u][v]){ flag=0; break; } } if(flag) return 1; }while(next_permutation(node,node+4)); return 0; } int n,m; bool graph[MAXN][MAXN]={0}; signed main(){ // freopen("rec.in","r",stdin); // freopen("rec.out","w",stdout); n=read();m=read(); for(int i=0;i