Hezov

FB FMI 2016

Jul 11th, 2025
505
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.02 KB | None | 0 0
  1. #include <fstream>
  2. using namespace std;
  3. ifstream cin("fb_fmi.in");
  4. ofstream cout("fb_fmi.out");
  5. int mat[1001][1001], visited[1001], comp[1001];
  6. int n, m , k, nrComp, compSol = -1, maxiComp, cnt;
  7. void DFS(int node)
  8. {
  9.     for(int i = 1;i<=n;i++)
  10.         if(mat[node][i])
  11.         {
  12.             mat[node][i] = 0;
  13.             mat[i][node] = 0;
  14.             mat[node][0]--;
  15.             mat[i][0]--;
  16.             if(mat[i][0] < k)
  17.                 DFS(i);
  18.         }
  19. }
  20. int main()
  21. {
  22.     cin >> n >> m >> k;
  23.     for(int i = 1;i<=m;i++)
  24.     {
  25.         int a, b;
  26.         cin >> a >> b;
  27.         if(mat[a][b] == 0)
  28.         {
  29.             mat[a][b] = mat[b][a] = 1;
  30.             mat[a][0]++;
  31.             mat[b][0]++;
  32.         }
  33.     }
  34.     for(int i = 1;i<=n;i++)
  35.         if(mat[i][0] < k)
  36.             DFS(i);
  37.     int cnt = 0;
  38.     for(int i = 1;i<=n;i++)
  39.         if(mat[i][0] >= k)
  40.             cnt++;
  41.     cout << cnt << '\n';
  42.     for(int i = 1;i<=n;i++)
  43.         if(mat[i][0] >= k)
  44.             cout << i << ' ';
  45.     return 0;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment