Pagini recente » Cod sursa (job #2078057) | Cod sursa (job #2462336) | Cod sursa (job #69115) | Cod sursa (job #225042) | Cod sursa (job #1759486)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("triplete.in");
ofstream fout("triplete.out");
vector <int> v[4100];
int n,m,viz[4100],cntfin;
void Citire()
{
int i,x,y;
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>x>>y;
v[x].push_back(y);v[y].push_back(x);
}
fin.close();
}
void DFS(int k,int pred,int cnt)
{
///cout<<k<<" "<<pred<<" "<<cnt<<endl<<cntfin<<endl;;
cnt++;
int i,j;
viz[k]=1;
for(i=0;i<v[k].size();i++)
if(viz[v[k][i]]==1&&v[k][i]!=pred&&cnt==2)
{
///for(j=1;j<=n;j++) viz[j]=0;
cntfin++;
return;
}
else if(viz[v[k][i]]==0) DFS(v[k][i],k,cnt);
return;
}
void Rezolvare()
{
int i,j;
cntfin=0;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++) viz[j]=0;
DFS(i,0,0);
}
fout<<cntfin<<"\n";
fout.close();
}
int main()
{
Citire();
Rezolvare();
return 0;
}