fork(6) download
  1. #include <iostream>
  2. #include <math.h>
  3.  
  4. using namespace std;
  5.  
  6. void sortowanie_babelkowe(int *tab,char *tabnazwa, int *tabx, int *taby, int n)
  7. {
  8. for (int i=1; i<n; i++)
  9. {
  10. for (int j=n-1; j>=1; j--)
  11. {
  12. if (tab[j]<tab[j-1])
  13. {
  14. int bufor,x,y;
  15. char n;
  16. bufor=tab[j-1];
  17. n=tabnazwa[j-1];
  18. x=tabx[j-1];
  19. y=taby[j-1];
  20.  
  21. tab[j-1]=tab[j];
  22. tabnazwa[j-1]=tabnazwa[j];
  23. tabx[j-1]=tabx[j];
  24. taby[j-1]=taby[j];
  25.  
  26. tab[j]=bufor;
  27. tabnazwa[j]=n;
  28. tabx[j]=x;
  29. taby[j]=y;
  30. }
  31. }
  32. }
  33. }
  34.  
  35. int main()
  36. {
  37. int ile_testow,ile_punktow;
  38. cin >> ile_testow;
  39. for(int i=0; i<ile_testow; i++)
  40. {
  41. cin >> ile_punktow;
  42. int x[ile_punktow],y[ile_punktow],z[ile_punktow];
  43. char nazwa[ile_punktow];
  44.  
  45. for(int i=0; i<ile_punktow; i++)
  46. {
  47. cin >> nazwa[i];
  48. cin >> x[i];
  49. cin >> y[i];
  50. z[i]=sqrt(pow(x[i],2)+pow(y[i],2));
  51. }
  52. sortowanie_babelkowe(z,nazwa,x,y,ile_punktow);
  53.  
  54. for(int i=0; i<ile_punktow; i++)
  55. {
  56. cout <<nazwa[i]<< " " <<x[i]<< " "<<y[i]<< endl;
  57. }
  58. cout <<endl;
  59. }
  60. return 0;
  61. }
  62.  
Success #stdin #stdout 0s 4360KB
stdin
2
3
A 0 0
C 5 5
B 1 -1

1 
X 1 1
stdout
A 0 0
B 1 -1
C 5 5

X 1 1