Мне нужно написать алгоритм на любом языке, который упорядочивал бы массив на основе 3 факторов. В качестве примера я использую курорты (например, Hipmunk). Допустим, я хочу поехать в отпуск. Я хочу самое дешевое место с лучшими отзывами и наибольшим количеством достопримечательностей. Тем не менее, очевидно, что я не могу найти тот, который был бы №1 из всех трех.
Пример (при условии, что есть 20 важных достопримечательностей):
Курорт A: 150 долларов за ночь ... 98/100 в положительных отзывах ... 18 из 20 достопримечательностей
Курорт B: 99 $ / ночь ... 85/100 в положительных отзывах ... 12 из 20 достопримечательностей
Курорт C: 120 долларов за ночь ... 91/100 в положительных отзывах ... 16 из 20 достопримечательностей
Курорт B выглядит наиболее привлекательно по цене, но занимает 3-е место в остальных 2 категориях. При этом я могу выбрать курорт C всего за 21 доллар больше за ночь и получить больше достопримечательностей и лучшие отзывы. Цена по-прежнему важна для меня, но у курорта А выдающиеся отзывы и масса достопримечательностей: стоит ли потраченных денег на 51 доллар больше?
Я хочу иметь возможность составить список, в котором освещение будет отсортировано от «лучшего к худшему» ( Цитирую bc это субъективно к потребителю). Как мне повысить ценность каждого курорта?
Если это немного сбивает с толку, проверьте www.hipmunk.com. У них есть самолет, который они называют Agony (и отель, который похож на мой вопрос), который они используют как свой собственный. Я использовал курорты в качестве примера, чтобы мой вопрос, надеюсь, имел немного больше смысла. Как решить такую задачу математикой?