Cod sursa(job #154127)
| Utilizator | Data | 10 martie 2008 22:13:49 | |
|---|---|---|---|
| Problema | Triplete | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.56 kb |
#include<stdio.h>
#define NMAX 500
int y[NMAX],z[NMAX],B,a,b,n,m,i,j,k,s,x[NMAX][NMAX];
int main()
{
freopen("triplete.in","r",stdin);
freopen("triplete.out","w",stdout);
scanf("%d%d",&n,&m);
for (i=1;i<=m;i++)
{
scanf("%d%d",&a,&b);
x[a][b>>3]=x[a][b>>3]|(1<<(b&7));
y[i]=a;
z[i]=b;
}
for (i=1;i<=m;i++)
{
for (j=1;j<=n;j++)
if (j!=y[i]&&j!=z[i])
{
m=1;
while (m<=256)
{
if (x[y[i]][j>>3]&x[z[i]][j>>3]&m)
s++;
m=m<<1;
}
}
}
printf("%d\n",s/3);
return 0;
}