Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int o[100],N,M;
- float val[100],greu[100],x[100],Gr;
- void citeste()
- {
- int i;
- cin>>N>>M;
- for (i=0;i<N;++i)
- {
- o[i]=i;
- cin>>val[i]>>greu[i];
- }
- }
- void sort()
- {
- int i,aux,schimb;
- do
- {
- schimb=0;
- for (i=0;i<N-1;++i)
- if (val[o[i]]/greu[o[i]]<val[o[i+1]]/greu[o[i+1]])
- {
- aux=o[i];
- o[i]=o[i+1];
- o[i+1]=aux;
- schimb=1;
- }
- }
- while (schimb);
- }
- void rezolva()
- {
- int i;
- for (i=0,Gr=M;i<N && Gr>greu[o[i]];++i)
- {
- x[o[i]]=1;
- Gr-=greu[o[i]];
- }
- }
- void afisare()
- {
- int i;
- for (i=0;i<N;++i)
- if (x[i]) cout<<i+1<<endl;
- }
- int main()
- {
- citeste();
- sort();
- rezolva();
- afisare();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement