Advertisement
Guest User

Untitled

a guest
Dec 6th, 2019
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.37 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. using namespace std;
  4. ifstream f("date.in");
  5.  
  6. int n,p,m,t[101],tipar[101];
  7. struct nr
  8. {
  9. int st,dr;
  10. }a[101];
  11. void citire()
  12. {
  13. int i,j;
  14. p=0;
  15. f>>n>>m;
  16. while(f>>i>>j)
  17. {
  18. p++;
  19. a[p].st=i;
  20. a[p].dr=j;
  21. }
  22. for(i=1;i<=n;i++)
  23. t[i]=i;
  24. }
  25. int pivot(int st,int dr,int y[101])
  26. {
  27. int i,j,dj,di,aux;
  28. i=st;j=dr;di=0;dj=1;
  29. while(i<=j)
  30. {
  31. if(y[i]>y[j])
  32. {
  33. aux=y[i];
  34. y[i]=y[j];
  35. y[j]=aux;
  36.  
  37. aux=di;
  38. di=dj;
  39. dj=aux;
  40. }
  41. i=i+di;
  42. j=j-dj;
  43. }
  44. return i;
  45. }
  46. void sortare(int st,int dr,int y[101])
  47. {
  48. int p;
  49. p=pivot(st,dr,y);
  50. if(st<=dr)
  51. {
  52. sortare(st,p-1,y);
  53. sortare(p+1,dr,y);
  54. }
  55. }
  56. void rezolvare()
  57. {
  58. int j,i,poz,Min,g,c;
  59. poz=1;
  60. g=1;tipar[1]=n;
  61. for(i=n;i>=1;i--)
  62. {
  63. if(t[a[i].st]!=t[a[i].dr]&&(t[a[i].st]==poz||t[a[i].dr]==poz))
  64. {
  65. if(t[a[i].st]>t[a[i].dr])
  66. t[a[i].st]=poz;
  67. else t[a[i].dr]=poz;
  68. }
  69.  
  70. sortare(1,n,t);
  71. c=1;int k=0;
  72. for(i=1;i<=n;i++)
  73. if(t[i]==c)
  74. {
  75. c++;
  76. k++;
  77. }
  78. g++;
  79. tipar[g]=k;
  80. }
  81. for(i=n;i>=1;i--)
  82. cout<<tipar[i]<<' ';
  83. }
  84.  
  85.  
  86. int main()
  87. {
  88. citire();
  89. rezolvare();
  90.  
  91. return 0;
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement