Se dă lista muchiilor unui graf neorientat. Să se afișeze gradul fiecărui vârf.
Date de intrare
Fişierul de intrare grade.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 grade.out
va conţine pe prima linie n
numere naturale, reprezentând gradele vârfurilor, în ordinea vârfurilor.
Restricţii şi precizări
1 ≤ n ≤ 100
1 ≤ i , j ≤ n
- muchiile se pot repeta în fișierul de intrare
Exemplu
grade.in
5 1 4 1 3 3 5 4 5 2 4 1 2 4 2 3 4
grade.out
3 2 3 4 2
SOLUTIE
#include<fstream> using namespace std; ifstream cin("grade.in"); ofstream cout("grade.out"); int n,a[101][101]; void citire() { cin>>n; int x,y; while(cin>>x && cin>>y) a[x][y] = 1; } int main() { citire(); for(int i=1;i<=n;i++) { int grad = 0; for(int j=1;j<=n;j++) if(a[i][j] || a[j][i]) grad++; cout<<grad<<" "; } }