Cod sursa(job #190655)

Utilizator andrei-alphaAndrei-Bogdan Antonescu andrei-alpha Data 23 mai 2008 19:07:27
Problema Triplete Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <stdio.h>

#define Nmax 4000
#define Mmax 60800
#define IN "triplete.in"
#define OUT "triplete.out"

short int nod[Nmax],xx[Mmax],yy[Mmax];
int nr,nrm,n,m;
bool a[Nmax/7][Nmax/7];

void scan()
{
	
	int x,y;
	freopen(IN, "r",stdin);
	freopen(OUT, "w",stdout);
	
	scanf("%d%d", &n,&m);
	for(int i=1;i<=m;++i)
	{	
		scanf("%d%d", &x,&y);
		++nod[x];
		++nod[y];
		xx[++nr]=x;
		yy[nr]=y;
		a[x][ y&((1<<3)-1) ]=a[y][ x&((1<<3)-1) ]=1;
	}
}

void solve()
{
	int rez=0;
	for(int i=1;i<=m;++i)  
        for(int k=1;k<=n;++k)  
            if(a[ xx[i] ][ k&7 ] && a[ yy[i] ][ k&7 ])  
                ++rez;  	
	printf("%d", rez/3);
}

int main()
{
	scan();
	solve();
	return 0;
}