Pagini recente » Cod sursa (job #1189870) | Cod sursa (job #2848960) | Cod sursa (job #2331914) | Cod sursa (job #2362720) | Cod sursa (job #211258)
Cod sursa(job #211258)
# include <cstdio>
# define FIN "triplete.in"
# define FOUT "triplete.out"
# define MAXN 210
# define MAXL 4100
# define MAXD 1048576
# define MAXK 65540
unsigned int N,M,i,j,cont;
unsigned int A[MAXL][MAXN];
unsigned int a[MAXK],b[MAXK];
unsigned int cnt[MAXD];
int main()
{
freopen(FIN,"r",stdin);
freopen(FOUT,"w",stdout);
scanf("%d%d",&N,&M);
for (i = 1; i <= M; ++i)
{
scanf("%d%d",&a[i],&b[i]);
A[a[i]][b[i]/20] += 1<<(b[i]%20);
A[b[i]][a[i]/20] += 1<<(a[i]%20);
}
/*for (i = 1; i <= MAXD; ++i)
cnt[i] = cnt[i>>1] + (i & 1);
*/
for (i = 1; i <= M; ++i)
for (j = N/20; j >= 0; --j)
cont += cnt[A[a[i]][j]&A[b[i]][j]];
printf("%d",cont/3);
return 0;
}