Pagini recente » Cod sursa (job #1672177) | Cod sursa (job #1406018) | Cod sursa (job #1717615) | Cod sursa (job #28713) | Cod sursa (job #475277)
Cod sursa(job #475277)
#include <stdio.h>
#include <string.h>
int n,m,sol,a[1<<16],b[1<<16],i,j,x,y;
char nr[1<<16];
int v[1<<12][1<<8];
void biti() {
for (i=1; i<=2*(1<<12); i++)
nr[i]=nr[i/2]+(i&1);
}
int main () {
freopen("triplete.in","r",stdin);
freopen("triplete.out","w",stdout);
scanf("%d%d",&n,&m);
biti();
for (i=1; i<=m; i++) {
scanf("%d%d",&a[i],&b[i]);
x=a[i];
y=b[i];
v[x][y/16]+=(1<<(y%16));
v[y][x/16]+=(1<<(x%16));
}
for (i=1; i<=m; i++)
for (j=0;j<=n/16;j++)
sol+=nr[v[a[i]][j]&v[b[i]][j]];
printf("%d\n",sol/3);
return 0;
}