回答編集履歴

2

乱数が良ければこんなことになる

2018/01/02 07:29

投稿

maisumakun
maisumakun

スコア145184

test CHANGED
@@ -3,3 +3,7 @@
3
3
 
4
4
 
5
5
  いちばん極端な例として、「`Math.random()`が常に同じ値を返す」環境があったとすれば、周期も何もなく、常に同じ「GUID」が生成され続けることは、すぐに分かるかと思います。
6
+
7
+
8
+
9
+ 逆に、`Math.random()`の内部実装がメルセンヌ・ツイスタの場合、周期は2の19937乗-1という、128ビットどころではない長さとなります。

1

31で割る必要があった

2018/01/02 07:29

投稿

maisumakun
maisumakun

スコア145184

test CHANGED
@@ -1,4 +1,4 @@
1
- いえ、この場合の乱数の周期は、`Math.random()`の周期と31(1回の処理で使う乱数の個数)の最小公倍数となります。
1
+ いえ、この場合の乱数の周期は、`Math.random()`の周期と31(1回の処理で使う乱数の個数)の最小公倍数を31で割ったもの(`Math.random()`の周期が31の倍数でなければ、周期そのもの)となります。
2
2
 
3
3
 
4
4