#include <iostream>
#include <cstdlib>

//Algorytm zachlanny pakowania plecaka

using namespace std;

int main()
{
int i, n, waga;
cout <<"podaj liczbe elementów do spakowania";
cin >>n;
cout <<"podaj max wage plecaka";
cin >>waga;
int P[n], W[n];
double POM[n];

// ====== wczytywanie do tablic ==================

for (i=0; i<n; i++)  {

		cout <<"Podaj wielkosc przedmiotu: " ;
		cin>>P[i];
		cout<<endl<<"Podaj wage przedmiotu: " ;
		cin >> W[i];
		POM[i]=(double)P[i]/W[i];
		cout<<endl;
	}


// ========koniec wczytywania ===========================

// ========= Sortowanie elementow od najwiekszego P[i]/W[i] ======== 
int p1, p2;
double p3;
for (i=0; i<n; i++)  {
	for (int j=0; j<n;j++)
		if (POM[i]>POM[j])  {
			
			p1=P[i];
			p2=W[i];
			p3=POM[i];
			
			P[i]=P[j];
			W[i]=W[j];
			POM[i]=POM[j];
			P[j]=p1;
			W[j]=p2;
			POM[j]=p3;
		}
	
	}
// ========== koniec sortowania  ============

//   ========== wypisz uporzadkowane ======== 

cout<<"wielkosc \t waga \t wielkosc/waga"<<endl;

for (i=0; i<n; i++)  {

	cout<<P[i]<<"  "<<W[i]<<"\t"<<POM[i]<<endl;
			
	}

// Pakowanie do plecaka ================

for (i=0; i<n; i++)  {

		if (waga>W[i])  {

		cout <<"spakowano przedmiot o wielkości:  "<< P[i]<<"i wadze:  " <<W[i]<<endl;

		waga=waga-W[i];

		}
		
	}