
메르센 트위스터는 널리 사용되는 의사 난수 생성기(PRNG)이다.이 PRNG는 32bit 정수를 생성하고, 내부적으로는 624개의 상태를 유지하며 이 상태를 기반으로 새로운 난수를 생성한다.이 PRNG의 특징은 높은 주기 (2^19937-1)와 좋은 통계적 성질을 가진다.그러나 624개의 연속된 출력을 보면 다음 출력을 정확하게 예측할 수 있게 된다는 특징이 있다. 따라서 이를 바탕으로 작성된 아래의 프로그램은 624개의 연속된 출력을 관찰하고, 그 이후의 출력을 예측한다.중요한 점은 초기 seed나 시작 위치에 관계없이 작동한다는 것! 프로그램은 입력된 숫자들을 디코딩하여 내부 상태를 복구한 후, 그 상태를 바탕으로 이후의 출력을 예측한다. https://gist.github.com/Rhomboid..