Отсартировываешь массив в порядке убывание.
Считаешь максимальное количество билетов вообще.
Считаешь сколько они стоят.
Считаешь стоймость всех купюр до последней, не включая ее. - var slozhoNamePridymat
Теперь от суммы стоймости максимального количество билетов отнимаешь стоймость биллета, если эта сумма больше slozhoNamePridymat, то все окей, повторяешь цикл снова, пока вот эта сумма не будет меньше slozhoNamePridymat, когда она станет меньше берешь значение до этой иттерации и получишь минимальную стоймость билетов с последней купюрой
Т.е допусти окей. На входе таков массив [10, 5, 5, 5] и стоимость 3 рубля допустим.
Макс. билетов = 8.
Стоимость билетов = 24р.
Стоимость до последней = 20.
24-3=21; итого 1 билет