Я хочу найти начальное число, которое создает определенную c числовую последовательность:
[115,91,45,76,78,93,35,5,29,8,99,88,98,70,40,116,11,39,102,41,124,98,120,57,36,67,57,23,52,34,75,32,117,66,12,19,86,67,62,121,60,5,54,37,65,18,5,56,66,115,32,99,73,70,115,73,123,74,31]
Интересно, смогу ли я найти одно из начальных чисел, которое даст мне этот результат, с помощью функции get (), которую я создал :
def get():
seed(x)
return [choice(range(128)) for _ in range(59)]
с константой x, равной числу, которое, применяя в качестве семени, дает мне правую верхнюю последовательность сверху.
Это небольшая программа, которую я сделал, чтобы найти ее, но прямо сейчас я проверил семена примерно на 1,6 миллиона, а еще ничего.
from random import choice, seed
lc =[115,91,45,76,78,93,35,5,29,8,99,88,98,70,40,116,11,39,102,41,124,98,120,57,36,67,57,23,52,34,75,32,117,66,12,19,86,67,62,121,60,5,54,37,65,18,5,56,66,115,32,99,73,70,115,73,123,74,31]
sd, h = 0,0
while 1:
seed(sd)
for c, o in enumerate(lc):
if not choice(range(128)) == o:
if c > h :
print(f"[Seeed {sd}] {c} matchs")
h = c
sd += 1
break
Может ли кто-нибудь помочь мне найти одно правильное семя?