luckydogchina Ответов: 0

Найти лучший результат за конечное целое число


Я хочу получить один алгоритм, который удовлетворяет следующим условиям:
1. Результат является уникальным.
2. результат в конечном целочисленном множестве колеблется от 0 до 2^256, а количество элементов случайно, значение элементов тоже случайно, повторения нет.
3. Решение очень сложно, но результат проверки очень прост.

Что я уже пробовал:

for example :
input
     set: 0x00034 0x0000345 0x8892ff ...
     x : a byte array
out:
     y = f(set, x); y belong to set;  
verify:
     verify(set, x, y) = ok / false

Rick York

Я редко вижу проблему, сформулированную так неопределенно. Учитывая конечный набор целых чисел, вы хотите получить некоторый результат, но вы ни в малейшей степени не описали, какой результат вы хотите. Похоже, вы хотите получить уникальный результат для каждого набора. Насколько я знаю, алгоритм CRC32 может сработать для вас. Вы можете найти тонны примеров кода для него здесь и в других местах, и он дает уникальные результаты для всех наборов входных данных. Он также дает результаты, которые не ассоциативны с входным значением, то есть вы можете поменять местами два входных значения и получить другой результат. Возможно, вам придется расширить его за пределы 32 бит, чтобы охватить необходимый диапазон данных.

luckydogchina

Я хочу разработать алгоритм миннера в биткойне.

0 Ответов