fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int wyliczKoszt(int* lista, int n) {
  5. int koszt = 0;
  6. while (n > 1) {
  7. int min1 = 0, min2 = 1;
  8. for (int i = 2; i < n; i++) {
  9. if (lista[i] < lista[min1]) {
  10. min1 = i;
  11. if (lista[min1] < lista[min2])
  12. swap(min1, min2);
  13. }
  14. }
  15. koszt += lista[min1] + lista[min2];
  16. lista[min1] = lista[min1] + lista[min2];
  17. swap(lista[min2], lista[n - 1]);
  18. n--;
  19. }
  20. return koszt;
  21. }
  22.  
  23. int main() {
  24. int n;
  25. cout << "Ile elementow ma tablica?\n n = ";
  26. cin >> n;
  27. int* L = new int[n];
  28. cout << "Podaj elementy:" << endl;
  29. for (int i = 0; i < n; i++)
  30. cin >> L[i];
  31. cout << wyliczKoszt(L, n) << endl;
  32. delete[] L;
  33. system("pause");
  34. return 0;
  35. }
Success #stdin #stdout #stderr 0s 15240KB
stdin
4
3 2 5 7
stdout
Ile elementow ma tablica?
 n = Podaj elementy:
34
stderr
sh: 1: pause: not found