Cod sursa(job #534036)

Utilizator bora_marianBora marian bora_marian Data 14 februarie 2011 23:41:36
Problema Triplete Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<fstream>
#include<vector>
using namespace std;
vector<int>G[4100];
bool pus[4100];
struct muchie{
	int a,b;};
muchie mu[65550];
int n,m;
long long rez;
void solve();
int main()
{
	ifstream fin("triplete.in");
	ofstream fout("triplete.out");
	fin>>n>>m;
	int i;
	for(i=1;i<=m;i++)
	{
	   fin>>mu[i].a>>mu[i].b;
	   G[mu[i].a].push_back(mu[i].b);
	   G[mu[i].b].push_back(mu[i].a);
     }
     solve();
     fout<<rez/3;
     return 0;
 }
void solve()
{
	int i;
	unsigned j;
	for(i=1;i<=m;i++)
	{
		for(j=0;j<G[mu[i].a].size();j++)
		   pus[G[mu[i].a][j]]=1;
		for(j=0;j<G[mu[i].b].size();j++)
		   if(pus[G[mu[i].b][j]]==1)
		     rez++;
		for(j=0;j<G[mu[i].a].size();j++)
		   pus[G[mu[i].a][j]]=0;
	   }
}