Нахождение контрольной цифры в 16-значном коде
Задача:
Даны 16-значные коды формата:
SSS-YY-nnnnnnnnnn-C, где:
SSS — код системы (3 цифры).
YY — год (2 цифры).
nnnnnnnnnn — уникальный номер (10 цифр).
C — контрольная цифра (1 цифра, вычисляется на основе первых 15).
Известно:
1. Ни один стандартный алгоритм не подходит (Luhn, mod 10, mod 11, ISBN-10, CRC и т.д.).
2. Неизвестно, насколько сложный метод используется — возможно, это:
Кастомная взвешенная сумма,
Комбинация операций (умножение, деление, XOR и др.),
Даже простая, но неочевидная формула.
3. Примеры для анализа:
643-23-0005431990-6 → 6432300054319906
643-23-0005431991-1 → 6432300054319911
643-23-0005432000-0 → 6432300054320000
(Дополнительные примеры будут предоставлены.)
Что нужно сделать:
1. Понять каким образом формируется контрольная цифра С
2. Проанализировать зависимость C от первых 15 цифр:
Проверить гипотезы: взвешенные суммы, полиномы, модульная арифметика, битовые операции.
3. Найти точный алгоритм или приближенную модель
4. Подтвердить решение на новых данных.
Требования к исполнителю:
Глубокое понимание математики (теория чисел, алгебра, дискретные алгоритмы).
Обучение и консалтинг