Cod sursa(job #1933834)

Utilizator ArkinyStoica Alex Arkiny Data 20 martie 2017 22:49:44
Problema Triplete Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#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;
}