Pagini recente » Cod sursa (job #796148) | Cod sursa (job #586604) | Cod sursa (job #3295782) | Profil AnGeLiC_HearT | Cod sursa (job #212185)
Cod sursa(job #212185)
#include <stdio.h>
#include <algorithm>
#define lim_bz2 255
#define mx 65536
using namespace std;
int x[mx + 4], y[mx + 4];
long v[4100][4100 >> 3];
int nr_biti[lim_bz2 + 4];
int n, m, rez;
int main()
{
freopen("triplete.in","r",stdin);
freopen("triplete.out","w",stdout);
scanf("%ld %ld", &n, &m);
for (int i = 1; i <= lim_bz2; i++)
nr_biti[i] = nr_biti[i >> 1] + (i & 1);
for (int i = 1; i <= m; i++)
{
scanf("%ld %ld", &x[i], &y[i]);
v[x[i]][y[i] >> 3] |= (1 << (y[i] & 7));
v[y[i]][x[i] >> 3] |= (1 << (x[i] & 7));
}
for (int i = 1; i <= m; i++)
for (int k = 0; k < (n >> 3) + 1; k++)
rez += nr_biti[v[x[i]][k] & v[y[i]][k]];
printf("%ld\n", rez / 3);
fclose(stdin);
fclose(stdout);
return 0;
}