回答編集履歴
1
m
test
CHANGED
@@ -1 +1,17 @@
|
|
1
|
-
そもそもrandは品質に保証がなく、実際一部の処理系では
|
1
|
+
そもそもrandは品質に保証がなく、実際一部の処理系ではひどい品質であり、利用するべきではありません。mt法などを利用するかC++標準の`std::mt19937`を利用するべきです。そして実際C++標準規格ではC標準規格が提供するrand()を非推奨しています。
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
また剰余(`%`)を用いた範囲調整は品質をさらに悪化させるので
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
```
|
10
|
+
|
11
|
+
(int)(((double)rand() / ((double)RAND_MAX + 1)) * N)
|
12
|
+
|
13
|
+
```
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
のようにしてください。
|