int x, y, k, S = 0;
int x = 0, y = 0, k = 0, S = 0;
a = 10;
- присваивает переменной a значение 10.a == 10;
- не делает фактически ничего. Производится сравнение и результат игнорируется. удалить все значения из списка a, которые есть в списке b. Если элемент встречается в b, неважно сколько раз, все его вхождения в a надо удалить. Оставить только те, что не всречаются в b. array_diff, упомянутый в вопросе, работает точно так же.
я поместил Вашу формулу i = beta * input % N в
while i < 100:
i = beta * input % N
result = divnum(input*beta %N, i)
divnum(input*beta %N, i)
это то же самое, что ваше:d= (divnum(input,delta))
s = divnum(i,gamma) %N
result = divnum(d,s)
result = 1 а i меньше инпут. Поэтому я могу найти инпут за количество операций = i а не инпуту.
Мои формулы сделаны так, что бы потом можно было инпут востановить кргда находится result = 1
z = 0x5f87 * 0x42 % N = 0x18a0ce а не 1!
я как понял это решение дает всегда i > input ?!
input в задаче неизвестное ! А вы его используете как известную величину. Input и надо найти !!!
вы постоянно хотите чето рвзузнать
А так похоже на динамическое программирвание F(n, k, m) - минимальная стоимость взять k комнат из первых n типов так, что они вмещают m человек.
Ответ минимум по n=N - сколько всего различных типов комнат, k = K - сколько комнат надо взять, m >= M - сколько человек надо расселить.
При пересчете надо перебрать, сколько комнат последнего типа вы берете.