При этом n целых чисел между [0,10000] как D 1, D 2..., D n, где может быть дубликаты и n могут быть огромными:
Я хочу найти k различных репрезентативных целых чисел (например, k = 5) между [0,10000] как R 1, R 2,..., R k, поэтому сумма ошибок всех репрезентативных целых чисел минимизирована.
Ошибка репрезентативного целого определяется ниже:
Предполагая, что у нас есть k представительных целых чисел в порядке возрастания как {R 1, R 2..., R k}, ошибка R i
является:
и я хочу свести к минимуму сумму ошибок из k представительных целых чисел:
как это можно сделать эффективно?
EDIT1: Наименьшее из k представительных целых чисел должно быть наименьшим числом в {D <суб > 1суб > , D <суб > 2суб > ..., D <суб > псуб > }
EDIT2: Наибольшее из k представительных целых чисел должно быть наибольшим числом в {D 1, D 2..., D n} плюс 1. Например, когда наибольшее число в {D 1, D 2..., D n} - 9787, тогда R k - 9788.
EDIT3: Конкретный пример:
D = {1,3,3,7,8,14,14,14,30}, и если k = 5 и R выбрано как {1,6,10,17,31}, то сумма ошибок:
сумма ошибок = (1-1) + (3-1) * 2 + (7-6) + (8-6) + (14-10) * 3 + (30-17) = 32
это происходит потому, что 1 <= 1,3,3 < 6, 6 <= 7,8 < 10, 10 <= 14,14,14 < 17, 17 <= 30 < 31