Urgent !!DAU COROANA!!



Cerința
Se dă lista arcelor unui graf orientat. Să se determine nodurile care au gradul exterior egal cu gradul interior.

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 i la j.

Date de ieșire
Programul va afișa pe ecran numărul C, reprezentând numărul de noduri care au gradul interior egal cu cel exterior, iar pe linie următoare afișează aceste noduri, ordonate crescător, separate prin exact un spațiu.

Restricții și precizări
1 ≤ n ≤ 100
Exemplu
Intrare

6 9
1 2
1 3
1 5
3 5
4 1
3 4
5 1
6 1
6 3
Ieșire

3
1 3 4

Răspuns :

Răspuns:

#include <iostream>

using namespace std;

int n,m,a[100],b[100];

void citire()

{ int x,y,i;

cin>>n>>m;

for(i=1;i<=m;i++)

{ cin>>x>>y;

a[x]++;

b[y]++;

}

}

int main()

{

citire();

int i,nr=0;

for(i=1;i<=n;i++)

if(a[i]==b[i])

{cout<<i<<" ";

nr++;}

cout<<endl;

cout<<nr;

return 0;

}

Pentru a afisa nr inainte trebuie sa scrii inca odata for-ul si aceeasi conditie (a[i]=b[i]) din main si cresti nr-ul acolo dupa care il afisezi si dai "endl". Dupa care reiei cobditia si afisezi nodurile

Explicație:

Am afisat numarul de aparitii la final fiindca e mai usor. Daca vrei sa-l afisezi iainte mai trebuie completat programul