379
Cerința
Se dă lista arcelor unui graf orientat. Să se afișeze, în ordine lexicografică, toate circuitele de lungime trei.
Date de intrare
Programul citește de la tastatură numărul n de noduri și numărul m de arce, iar apoi lista arcelor, formată din m perechi de forma i j, cu semnificația că există arc orientat de la nodul i la nodul j.
Date de ieșire
Programul va afișa pe ecran circuitele cerute, câte un circuit pe o linie a ecranului, nodurile unui circuit fiind separate prin exact un spațiu.
Restricții și precizări
1 ≤ n ≤ 100
Exemplu
5 7 1 3 2 5 3 2 3 4 4 2 5 4 5 1
Ieșire
2 5 4 4 2 5 5 4 2
#include <bits/stdc++.h>
using namespace std;
int a[101][101];
int main()
{
int n , m , x , y;
cin >> n >> m;
for(int i = 1 ; i <= m ; ++i)
{
cin >> x >> y;
a[x][y] = 1;
}
for(int i = 1 ; i <= n ; ++i)
{
for(int j = 1 ; j <= n ; ++j)
{
for(int r = 1 ; r <= n ; ++r)
if(a[i][j] == 1 && a[r][i] == 1 && a[j][r] == 1)
cout << i << " " << j << " " << r << endl;
}
}
return 0;
}
Comentarii