7
のk番目の最小数を計算する方法、線形合同法は、以下の漸化式で定義される。<a href="http://en.wikipedia.org/wiki/Linear_congruential_generator" rel="nofollow">Wikipedia</a>によれば、線形合同法
0 < m
、
0 <= a < m
、
0 <= c < m
、
0 <= X(0) < m
は整数で
X(n) = {a.X(n-1) + c} mod m
ジェネレータを指定する定数。
a
、c
、m
、X(0)
、及びn
が与えられ、iの値がセット{X(0), X(1), ..., X(n)}
非常に高速のk
番目の最小値(1 <= k <= n
)を決定することができますか?その後、
(n >= m)
なら...あなたが生成中にk
最低のアイテムを格納していないと仮定すると、
LCGが正しく設計されていれば、範囲は '{0..m} 'になるので、k-smallest X(i)はおそらく' k-1'です。 – RBarryYoung
この質問は、math.stackexchange.comでもうまく収まるでしょう。 – felix
@RBarryYoung:指定された 'n 'が期間未満ではありません。 –