Subject Selection By Greedy Optimization

The Institute hired you to implement the program. They asked you to implement a greedy method (greedyAdvisor) to formulate
a list of subjects that satisfies each students constraint (the amount of work student is willing to do).
The algorithm should pick the best subjects first. The notion of best is determined by the use of the comparator. The
comparator is a function that takes two argumentseach of which is a (value, work) tupleand returns a boolean indicating
whether the first argument is better than the second. Here, the definition of better can be altered by passing in different
comparators.
Weve provided three comparators for you to pass in:
cmpValue, which compares the values of the subjects
cmpWork, which compares the workload of the subjects
cmpRatio, which compares the value/work ratios of the subjects