Cod sursa(job #190270)

Utilizator andrei-alphaAndrei-Bogdan Antonescu andrei-alpha Data 21 mai 2008 13:20:44
Problema Triplete Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 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][Nmax];

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]=a[y][x]=1;
	}
}

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

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