andreisophie

#2155 Facebook_FMI (Solutie Oficiala)

Jan 28th, 2020 (edited)
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.91 KB | None | 0 0
  1. # include <bits/stdc++.h>
  2. # define NM 1001
  3. using namespace std;
  4.  
  5. ifstream f("fb_fmi.in");
  6. ofstream g("fb_fmi.out");
  7.  
  8. int n, m, k;
  9. int d[NM];
  10. bool a[NM][NM];
  11.  
  12. int main()
  13. {
  14.     int x, y;
  15.     f >> n >> m >> k;
  16.     for(int i=1; i<=m; ++i){
  17.         f >> x >> y;
  18.         a[x][y] = a[y][x] = 1;
  19.         /// nr. de prieteni = grad
  20.         d[x]++;
  21.         d[y]++;
  22.     }
  23.  
  24.     int i = 1;
  25.     while( i <= n ) {
  26.  
  27.         if (d[i] < k && d[i] > 0) {
  28.  
  29.             for (int j=1; j<=n; ++j)
  30.                 if (a[i][j]) {
  31.                     a[i][j] = a[j][i] = 0;
  32.                     --d[j];
  33.                 }
  34.  
  35.             d[i] = 0;
  36.             i = 1;
  37.         }
  38.         else ++i;
  39.     }
  40.  
  41.     int nr = 0;
  42.     for(int i=1; i<=n; ++i)
  43.         if (d[i]) ++nr;
  44.  
  45.     g << nr << '\n';
  46.     if (nr == 0) return 0;
  47.  
  48.     for(int i=1; i<=n; ++i)
  49.         if (d[i]) g << i << ' ';
  50.     g << '\n';
  51.  
  52.     return 0;
  53. }
Add Comment
Please, Sign In to add comment