def lcg_skip(m, a, c, n):
a1 = a - 1
t
= pow(a
, n
, m
* a1
) - 1 t = (t * c // a1) % m
return t
if __name__ == '__main__':
m = 2**64
a = 6364136223846793005
c = 1442695040888963407
for i in range(1,11):
n = i * 2**40
print(f'n={n}; seed={lcg_skip(m, a, c, n)}')
ZGVmIGxjZ19za2lwKG0sIGEsIGMsIG4pOgogICAgYTEgPSBhIC0gMQogICAgdCA9IHBvdyhhLCBuLCBtICogYTEpIC0gMQogICAgdCA9ICh0ICogYyAvLyBhMSkgJSBtCiAgICByZXR1cm4gdAoKaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgIG0gPSAyKio2NAogICAgYSA9IDYzNjQxMzYyMjM4NDY3OTMwMDUKICAgIGMgPSAxNDQyNjk1MDQwODg4OTYzNDA3CiAgICBmb3IgaSBpbiByYW5nZSgxLDExKToKICAgIAluID0gaSAqIDIqKjQwCiAgICAJcHJpbnQoZiduPXtufTsgc2VlZD17bGNnX3NraXAobSwgYSwgYywgbil9JykK