Идеальный минимальный хэш для математических комбинаций

Сначала определите два целых числаN а такжеK, гдеN >= K, оба известны во время компиляции. Например:N = 8 а также .K = 3

Затем определите набор целых чисел[0, N) (или же[1, N] если это упрощает ответ) и назовите егоS, Например:{0, 1, 2, 3, 4, 5, 6, 7}

Количество подмножествS сK элементы задаются формулойC(N, K), пример

Моя проблема заключается в следующем: создать идеальный минимальный хэш для этих подмножеств. Размер примера хеш-таблицы будетC(8, 3) или же .56

Я нене заботиться о порядке, только то, что в хеш-таблице должно быть 56 записей, и что я могу быстро определить хеш из набораK целые числа. Я тоже нене заботиться о обратимости.

Пример хэша:hash({5, 2, 3}) = 42, (Число 42 не являетсяне важно, по крайней мере, здесь)

Есть ли общий алгоритм для этого, который будет работать с любыми значениямиN а такжеK? Я не былЯ не могу найти его с помощью поиска в Google или своими собственными наивными усилиями.

Ответы на вопрос(2)

Ваш ответ на вопрос