Я определяю рейтинг 1000 участников в нескольких категориях. Результаты примерно такие:Подведите итоги в категориях лучших разрядов
Участник/Категория/Место (снизу лучше): A | 1 | 1. A | 2 | 1. A | 3 | 1. A | 4 | 7. B | 1 | 2. B | 2 | 2. B | 3 | 2. B | 4 | 4. [...]
Теперь я хочу подвести итоги. Стандартным методом было бы суммировать все места и разделить его на количество категорий:
Участник A: (1 + 1 + 1 + 7)/4 = 2,5 Участник B: (2 + 2 + 2 + 4)/4 = 2,5
Но я хочу отдать предпочтение участнику A, потому что он выиграл 3 из 4 категорий.
Я мог бы определить фиксированные точки для всех мест, а именно:
Место | Очки 1 | 1000 2 | 500 3 | 250 4 | 125 5 | 62,5 6 | 31,25 7 | 15,625 [...]
Участник А: 1000 + 1000 + 1000 + 15,625 = 3015,625 Участник в: 500 + 500 + 500 + 125 = 1 625
проблема теперь, т Я хочу дать каждому месту некоторые моменты, так что по-прежнему можно сортировать низкие места. И когда я продолжаю делить доступные точки на 2, максимальное количество десятичных знаков будет недостаточным (Доступные точки/2^Число мест).
Что я могу сделать?
Отлично, спасибо! – root66