Se dă lista muchiilor unui graf neorientat. Să se afișeze vârfurile izolate ale grafului.
Date de intrare
Fişierul de intrare izolate.in
conţine pe prima linie numărul n
, reprezentând numărul de vârfuri ale grafului. Fiecare dintre următoarele linii conține câte o pereche de numere i j
, cu semnificația că există muchie între i
și j
.
Date de ieşire
Fişierul de ieşire izolate.out
va conţine pe prima linie numărul m
de vârfuri izolate, urmat de cele m
vârfuri izolate, în ordine crescătoare, separate prin exact un spațiu.
Restricţii şi precizări
1 ≤ n ≤ 100
1 ≤ i , j ≤ n
- muchiile se pot repeta în fișierul de intrare
SOLUTIE
#include <fstream> using namespace std; ifstream cin("izolate.in"); ofstream cout("izolate.out"); int a[105][105]; int main() { int n,x,y,v[105]={0},nr=0,ok; cin>>n; while(cin>>x>>y) a[x][y]=a[y][x]=1; for(int i=1;i<=n;i++) { ok=1; for(int j=1;j<=n;j++) if(a[i][j]==1) ok=0; if(ok==1) { nr++; v[i]=1; } } cout<<nr<<" "; for(int i=1;i<=n;i++) if(v[i]==1) cout<<i<<" "; }