Advertisement
Guest User

Untitled

a guest
Feb 19th, 2020
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.72 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4.  
  5. int o[100],N,M;
  6. float val[100],greu[100],x[100],Gr;
  7.  
  8. void citeste()
  9. {
  10. int i;
  11. cin>>N>>M;
  12. for (i=0;i<N;++i)
  13. {
  14. o[i]=i;
  15. cin>>val[i]>>greu[i];
  16. }
  17. }
  18.  
  19. void sort()
  20. {
  21. int i,aux,schimb;
  22. do
  23. {
  24. schimb=0;
  25. for (i=0;i<N-1;++i)
  26. if (val[o[i]]/greu[o[i]]<val[o[i+1]]/greu[o[i+1]])
  27. {
  28. aux=o[i];
  29. o[i]=o[i+1];
  30. o[i+1]=aux;
  31. schimb=1;
  32. }
  33. }
  34. while (schimb);
  35. }
  36.  
  37. void rezolva()
  38. {
  39. int i;
  40. for (i=0,Gr=M;i<N && Gr>greu[o[i]];++i)
  41. {
  42. x[o[i]]=1;
  43. Gr-=greu[o[i]];
  44. }
  45. }
  46.  
  47. void afisare()
  48. {
  49. int i;
  50. for (i=0;i<N;++i)
  51. if (x[i]) cout<<i+1<<endl;
  52. }
  53.  
  54. int main()
  55. {
  56. citeste();
  57. sort();
  58. rezolva();
  59. afisare();
  60. return 0;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement