Pagini recente » Cod sursa (job #957554) | Cod sursa (job #1264941) | Cod sursa (job #1269470) | Cod sursa (job #1280776) | Cod sursa (job #21416)
Cod sursa(job #21416)
#include <stdio.h>
#include <bitset>
using namespace std;
const int N_MAX = 4096;
const int M_MAX = 65536;
bitset <N_MAX> G[N_MAX];
pair <int, int> mch[M_MAX];
int main()
{
freopen("triplete.in", "r", stdin);
freopen("triplete.out", "w", stdout);
int N, M, x, y, i;
scanf("%d %d\n", &N, &M);
for (i = 0; i < M; i ++) {
scanf("%d %d\n", &mch[i].first, &mch[i].second);
G[mch[i].first - 1][mch[i].second - 1] = 1;
G[mch[i].second - 1][mch[i].first - 1] = 1;
}
long long nr = 0;
for (i = 0; i < M; i ++) {
x = mch[i].first - 1, y = mch[i].second - 1;
nr += (G[x] & G[y]).count();
}
printf("%lld\n", nr / 3);
return 0;
}