Pagini recente » Cod sursa (job #2088140) | Cod sursa (job #3277845) | Cod sursa (job #3135859) | Cod sursa (job #2740070) | Cod sursa (job #2274091)
#include <stdio.h>
#include <vector>
#include <algorithm>
#include <math.h>
#include <bitset>
using namespace std;
int n, m;
bitset<32> a[4100];
vector<int> g[4100];
int main() {
freopen("triplete.in", "r", stdin);
freopen("triplete.out", "w", stdout);
scanf("%d %d", &n, &m);
for (int i = 0; i < m; ++i) {
int x, y;
scanf("%d %d", &x, &y);
if (x < y) {
g[x].push_back(y);
a[x][y] = true;
}
else {
g[y].push_back(x);
a[y][x] = true;
}
}
int result = 0;
for (int i = 1; i <= n; ++i) {
for (auto j : g[i]) {
result += (a[i] & a[j]).count();
}
}
printf("%d", result);
return 0;
}