Pagini recente » Cod sursa (job #2217481) | Cod sursa (job #83388) | Cod sursa (job #249415) | Cod sursa (job #1839434) | Cod sursa (job #1933834)
#include <fstream>
#include<algorithm>
#include<vector>
#include<queue>
using namespace std;
vector<int> G[5000];
ifstream in("triplete.in");
ofstream out("triplete.out");
int nr = 0;
int viz[5010];
void BFS(int x)
{
viz[x] = x+1;
for (int i = 0; i < G[x].size(); ++i)
{
if (viz[G[x][i]] <= x)
{
viz[G[x][i]] = x+1;
}
else
{
++nr;
}
for (int j = 0; j < G[G[x][i]].size(); ++j)
{
viz[G[G[x][i]][j]] = x + 1;
}
}
}
int main() {
int N, M;
in >> N >> M;
for (int i = 1; i <= M; ++i)
{
int x, y;
in >> x >> y;
G[x].push_back(y);
G[y].push_back(x);
}
for (int i = 1; i <= N; ++i)
{
BFS(i);
}
out << nr/3;
return 0;
}