魔兽地图编辑器吧 关注:64,846贴子:3,834,132
  • 2回复贴,共1

关于整数池取出随机整数

只看楼主收藏回复

已知整数池子里有n个整数分别为A1,A2,A3.....,每个整数对应的占比已知为R1,R2,R3.......占比之和也已知为m,求随机取出某个整数的算法。有没有比下面更节省效率的方法。
function GetRandomInteger takes integer zsc returns integer
local integer a = 1
local integer i = 0
local real sjs
set sjs = GetRandomReal(0, m)
loop
set sjs = sjs - Ra //Ra表示第a个整数的占比
exitwhen sjs<=0
set a = a + 1
endloop
set i = Aa //Aa表示第a个整数
return i
endfunction


IP属地:江苏1楼2024-01-08 16:32回复
    二叉树


    IP属地:安徽2楼2024-01-08 17:26
    收起回复