Pagini recente » Cod sursa (job #3131946) | Cod sursa (job #572048) | Cod sursa (job #925945) | Cod sursa (job #827648) | Cod sursa (job #214833)
Cod sursa(job #214833)
#include <stdio.h>
int main()
{
freopen("perechi.in", "r", stdin);
freopen("perechi.out", "w", stdout);
scanf("%d", &n);
for (i=0; i<n; i++)
scanf("%d", &x[i], &y[i], &z[i]);
for (p=2; p<128; p++)
{
matrice(p);
perechi+=calcul(p);
}//for p
return 0;
}//main
void matrice(int p)
{
memset(a, 0, sizeof(a));
for (i=0; i<n; i++)
++a[x[i]%p][y[i]%p][z[i]%p];
}//matrice
int calcul(int p)
{
int s=0;
for (i=0; i<(p/2); i++)
for (j=0; j<p; j++)
for (k=0; k<p; k++)
{
if (!((i==(i-p))&&(j==(j-p))&&(k==(k-p))))
s+=a[i][j][k]*a[i-p][j-p][k-p];
else
s+=a[i][j][k]*(a[i][j][k]-1)/2;
}//for k
}//calcul