A company needs to store a set of n programs, P1, P2, ..., Pn, on a central computer. Each program Pi takes si kilobytes of storage, and the capacity of the computer disk is D kilobytes, with D < ∑𑛠ð‘ . Give a polynomial-time algorithm that the company can use in order to maximize the number of programs stored on the disk. Note: to prove that your greedy strategy yields the optimal solution, you have to prove that the problem has the greedy-choice property.