удалить все значения из списка 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 и надо найти !!!
вы постоянно хотите чето рвзузнать
Надо подобрать a,b,c,d так, что любое/как можно больше x= random.randint(2**119,2**120) после домножения на 1/a*b/c*d было меньше 10^70?