fork download
  1. type
  2. Tmas = array[1..1000] of longint;
  3.  
  4. procedure inmas(var mas: Tmas; var N: longint); // Уведення масиву з вхідного потоку
  5. var
  6. i: longint;
  7. begin
  8. read(N);
  9. for i := 1 to N do
  10. read(mas[i]);
  11. end;
  12.  
  13. function bubble_sort(var mas: Tmas; N: longint): longint; // Підрахунок кількості обмінів
  14. var
  15. i, j, temp: longint;
  16. swaps: longint;
  17. begin
  18. swaps := 0; // Лічильник обмінів
  19. for i := 1 to N - 1 do
  20. for j := 1 to N - i do
  21. if mas[j] > mas[j + 1] then
  22. begin
  23. temp := mas[j];
  24. mas[j] := mas[j + 1];
  25. mas[j + 1] := temp;
  26. inc(swaps); // Збільшуємо кількість обмінів
  27. end;
  28. bubble_sort := swaps;
  29. end;
  30.  
  31. var
  32. N, swaps: longint;
  33. mas: Tmas;
  34. begin
  35. inmas(mas, N); // Читання масиву
  36. swaps := bubble_sort(mas, N); // Сортування та підрахунок обмінів
  37. writeln(swaps); // Виведення результату
  38. end.
Success #stdin #stdout 0s 5288KB
stdin
Standard input is empty
stdout
0