YorKnEz

Untitled

Oct 12th, 2020
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.32 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. int main() {
  4. freopen("data.in", "r", stdin);
  5. freopen("data.out", "w", stdout);
  6.  
  7. int n, m, x, y;
  8.  
  9. scanf("%d %d", &n, &m);
  10.  
  11. int a[n+1][n+1], adiac[n+1][n+1];
  12.  
  13. for (int i = 1; i <= n; i++) {
  14. for (int j = 1; j <= n; j++) {
  15. a[i][j] = adiac[i][j] = 0;
  16. }
  17. adiac[i][0] = 1;
  18. }
  19.  
  20. for (int i = 0; i < m; i++) {
  21. scanf("%d %d", &x, &y);
  22.  
  23. if (a[x][y] == 0) {
  24. a[x][y] = a[y][x] = 1;
  25.  
  26. adiac[x][adiac[x][0]] = y;
  27. adiac[x][0]++;
  28.  
  29. adiac[y][adiac[y][0]] = x;
  30. adiac[y][0]++;
  31. }
  32. }
  33.  
  34. int grad[n+1], gradMax = 0;
  35.  
  36. for (int i = 1; i <= n; i++) {
  37. grad[i] = 0;
  38. }
  39.  
  40. for (int i = 1; i <= n; i++) {
  41. adiac[i][0]--;
  42.  
  43. grad[i] = adiac[i][0];
  44.  
  45. if (grad[i] > gradMax) {
  46. gradMax = grad[i];
  47. }
  48. }
  49.  
  50. //a
  51. for (int i = 1; i <= n; i++) {
  52. printf("(%d: %d) ", i, grad[i]);
  53. }
  54.  
  55. printf("\n");
  56.  
  57. //b
  58. for (int i = 1; i <= n; i++) {
  59. if (grad[i] == gradMax) {
  60. printf ("%d ", i);
  61. }
  62. }
  63.  
  64. //c
  65. for (int i = 1; i <= n; i++) {
  66. if (grad[i] == 0) {
  67. printf("%d ", i);
  68. }
  69. }
  70.  
  71. printf("\n");
  72.  
  73. }
  74.  
Advertisement
Add Comment
Please, Sign In to add comment