Pagini recente » Cod sursa (job #187033) | Rating Dumitru Mihai-Valentin (Dumitru_Mihai_Valentin_325CB) | Cod sursa (job #1584718) | Cod sursa (job #1704482) | Cod sursa (job #1750662)
#include <bits/stdc++.h>
using namespace std;
const char fin[] = "triunghi.in";
const char fout[] = "triunghi.out";
const int MAXN = 4096;
bitset<MAXN>cun[MAXN];
vector <int> lista[MAXN];
void baga (int x, int y) {
cun[x][y] = cun[y][x] = 1;}
int main() {
ifstream cin(fin);
ofstream cout(fout);
int N, M;
cin >> N >> M;
for (int i = 0, x, y; i < M; ++i)
{
cin >> x >> y;
-- x; -- y;
baga(x, y);
lista[x].push_back(y);
lista[y].push_back(x);
}
long long ans = 0;
for (int i = 0; i < N ; ++i)
{
for(auto j : lista[i])
ans += (cun[i] & cun[j]).count();
}
cout << ans / 6;
return 0;
}