Pagini recente » Cod sursa (job #1015464) | Cod sursa (job #1354930) | Cod sursa (job #243576) | Cod sursa (job #632379) | Cod sursa (job #1167527)
#include <iostream>
#include <fstream>
long long int array[4096][64];
int nr_biti(long long int x)
{
int count = 0;
while(x)
{
x=x&(x-1);
count++;
}
return count;
}
int main ()
{
std::ifstream fin("triplete.in");
std::ofstream fout("triplete.out");
int n, m;
int a, b;
fin>>n>>m;
for(int i=0;i<m;i++)
{
fin>>a>>b;
a--;b--;
array[a][b>>6] |= 1<<(b%64);
array[b][a>>6] |= 1<<(a%64);
}
int count=0;
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
{
if(array[i][j>>6]&(1<<j%64))
{
for(int k=0;k<64;k++)
{
count+=nr_biti(array[i][k] & array[j][k]);
}
}
}
}
fout<<count/3;
return 0;
}