Pagini recente » Cod sursa (job #1120994) | Cod sursa (job #2147146) | Cod sursa (job #717668) | Cod sursa (job #280095) | Cod sursa (job #1308380)
#include<fstream>
using namespace std;
ifstream in("triplete.in");
ofstream out("triplete.out");
const int NMAX = 4096;
int n,m;
long long v[NMAX + 10][65];
int biti(long long n)
{
int rez = 0;
while(n){
n = n&(n-1);
++rez;
}
return rez;
}
int main()
{
in>>n>>m;
int a,b,sol = 0,p = 0;
for(int i = 1 ; i <= m ; i++){
in>>a>>b;
a--;
b--;
v[a][b>>6] |= 1LL << (b%64);
v[b][a>>6] |= 1LL << (a%64);
}
for(int i = 0 ; i < n ; i++)
for(int j = i+1 ; j < n ; j++){
if((v[i][j>>6]&(1LL << (j%64))) == 0)
continue;
for(int k = 0 ; k < 64 ; k++)
sol += biti(v[i][k]&v[j][k]);
}
out<<sol/3;
return 0;
}