dimuster

backpack v1

Jan 12th, 2021 (edited)
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.94 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6.     int c;
  7.     double n, item, price, sum = 0;
  8.     cin >> n;
  9.     cin >> c;
  10.     double a[c][3];
  11.     for (int i = 0; i < c; i++) {
  12.         cin >> item;
  13.         a[i][0] = item;
  14.         cin >> price;
  15.         a[i][1] = price;
  16.         a[i][2] = price / item;
  17.     }
  18.     for (int i = 0; i < c - 1; i++) {
  19.         for (int j = 0; j < c - i - 1; j++) {
  20.             if (a[j][2] < a[j+1][2]) {
  21.                 double t = a[j+1][2];
  22.                 a[j+1][2] = a[j][2];
  23.                 a[j][2] = t;
  24.                 double t1 = a[j+1][0];
  25.                 a[j+1][0] = a[j][0];
  26.                 a[j][0] = t1;
  27.             }
  28.         }
  29.     }
  30.  
  31.  
  32.     for (int i = 0; ; i++) {
  33.         if (n > a[i][0]) {
  34.             sum += a[i][0] * a[i][2];
  35.             n -= a[i][0];
  36.         } else {
  37.             sum += n * a[i][2];
  38.             break;
  39.         }
  40.  
  41.     }
  42.  
  43.     cout << sum;
  44.  
  45.     return 0;
  46. }
Add Comment
Please, Sign In to add comment