Advertisement
elektryk798

plecak_new

Mar 20th, 2016
363
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.23 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. void Sortowanie(double tab[][2], int siz)
  7. {
  8.     int k;
  9.     for(int i=0;i<siz;i++)
  10.     {
  11.         k=i;
  12.         for(int j=i+1;j<siz;j++)
  13.         if(tab[j][0]>tab[k][0])
  14.             k=j;
  15.         swap(tab[k][0],tab[i][0]);
  16.         swap(tab[k][1],tab[i][1]);
  17.     }
  18. }
  19.  
  20. int main()
  21. {
  22.     string p[10];
  23.     int n;
  24.     double stosunek[10][2],c[10],w[10],waga,max_waga=0;;
  25.     cout <<"ile przedmiotow?"<<endl;
  26.     cin>>n;
  27.     int ile[n];
  28.     for(int i=0;i<n;i++)
  29.         ile[i]=0;
  30.     cout <<"jaka waga?"<<endl;
  31.     cin >>waga;
  32.     cout <<"podaj przedmiot, wage i wartosc"<<endl;
  33.     for (int i=0;i<n;i++)
  34.     {
  35.         cin>>p[i]>>c[i]>>w[i];
  36.     }
  37.     for (int i=0;i<n;i++)
  38.     {
  39.         stosunek[i][0]=w[i]/c[i];
  40.         stosunek[i][1]=i;
  41.     }
  42.     Sortowanie(stosunek,n);
  43.     int co=0;
  44.     while(co<n)
  45.     {
  46.         int ktory=stosunek[co][1];
  47.         if((max_waga+c[ktory])<=waga)
  48.         {
  49.             max_waga+=c[ktory];
  50.             ile[ktory]+=1;
  51.         }
  52.         else
  53.             co++;
  54.     }
  55.     cout <<"WEZ:"<<endl;
  56.     for(int i=0;i<n;i++)
  57.     {
  58.         if(ile[i]!=0)
  59.             cout <<ile[i]<<"x "<<p[i]<<endl;
  60.     }
  61.     return 0;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement