赞
踩
有一个能生成1-5的随机函数,在它的基础上,写一个能生成1-7的随机函数
var f5 = function() {
return Math.ceil(Math.random() * 5);
};
var test = function(fn) {
var count = 10000;
var dict = {};
for (; count--;) {
var num = fn();
dict[num] = dict[num] ? dict[num] + 1 : 1;
}
console.log(dict);
};
var f7 = function() {
var arr = [];
var arr2 = [];
var count = 7;
for (var i = 0; i < count; i++) {
arr.push(i+1);
}
while (arr.length != 1) {
var dict = {};
var max = -1;
for (var i = 0; i < arr.length; i++) {
var rnd = f5();
if (rnd> max) {
max = rnd;
}
dict[rnd] = dict[rnd] || [];
dict[rnd].push(arr[i]);
}
arr = dict[max];
}
return arr[0];
};
test(f7);
思想是,让1-7的7个数字“打架”,得分高的进入下一轮,直到决出胜者
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。