代码如下:

$setting = array(

// 黑色概率

0 => 0.99,

// 白色概率

1 => 0.01,

);

// Requires the GD Library

header("Content-type: image/png");

$im = imagecreatetruecolor(256, 256) or die("Cannot Initialize new GD image stream");

$white = imagecolorallocate($im, 255, 255, 255);

$start = microtime(true);

for ($y=0; $y<256; $y++) {

for ($x=0; $x<256; $x++) {

if (random($setting) === 1) {

imagesetpixel($im, $x, $y, $white);

}

}

}

$time = microtime(true) - $start;

header("X-Exec-Time: ".$time);

imagepng($im);

imagedestroy($im);

/**

* 全概率计算

*

* @param array $p array('a'=>0.5,'b'=>0.2,'c'=>0.4)

* @return string 返回上面数组的key

* @author Lukin

*/

function random($ps){

static $arr = array(); $key = md5(serialize($ps));

if (!isset($arr[$key])) {

$max = array_sum($ps);

foreach ($ps as $k=>$v) {

$v = $v / $max * 10000;

for ($i=0; $i

}

}

return $arr[$key][mt_rand(0,count($arr[$key])-1)];

}

?>

黑点出现概率99%,白点出现概率1%,测试结果:

php概率函数,PHP全概率运算函数(优化版) Webgame开发必备相关推荐

  1. react hook + stamen store + pug实现纯函数无痛版react开发体验

    基于最新的react 16.7.0-alpha.2,结合react hook + stamen store + pug,实现纯函数无痛版react开发体验,畅快度直逼clojurescript + r ...

  2. Code::Blocks 2023.01 全中文汉化-优化版

    Code::Blocks 是一款开放源码.功能全面的跨平台集成开发环境(IDE),通过集成相应的编译器,可以支持使用广泛的C和C++程序开发.而且通过集成各种插件,可以实现各种扩展功能. 目前在中文网 ...

  3. 正态分布函数概率运算dnorm/pnrom/qnrom/rnorm

    R语言-正态分布函数概率运算 一.正态分布 二.R语言中的相关函数 三.举例 1.求值函数`dnorm` 2.概率函数`pnrom` 3.函数`qnrom` 4.取样函数`rnrom` 四.引用 一. ...

  4. 《Delphi 版 everything、光速搜索代码》 关于获取文件全路径 GetFullFileName 函数的优化

    <Delphi 版 everything.光速搜索代码>,文章中关于获取文件全路径的函数:GetFullFileName,有一个地方值得优化. 就是有多个文件,它们可能属于同一个目录. 譬 ...

  5. [转载]《Delphi 版 everything、光速搜索代码》 关于获取文件全路径 GetFullFileName 函数的优化...

    Delphi 版 everything.光速搜索代码>,文章中关于获取文件全路径的函数:GetFullFileName,有一个地方值得优化. 就是有多个文件,它们可能属于同一个目录. 譬如 Sy ...

  6. 非常全的 matlab 函数

    一.常用对象操作:除了一般windows窗口的常用功能键外. 1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看. 2.who 可以查看当前工作空间变量名, who ...

  7. 史上最全MySQL 大表优化方案(长文)

    转载自  史上最全MySQL 大表优化方案(长文) 当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化: 一.单表优化 除非单表数据未来会一直不断上涨,否则不要一开始就考虑 ...

  8. 史上最全的 MySQL 高性能优化实战总结

    转载自   史上最全的 MySQL 高性能优化实战总结 一.前言 MySQL 对于很多 Linux 从业者而言,是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰.在进行 M ...

  9. Python数模笔记-模拟退火算法(1)多变量函数优化

    1.模拟退火算法 模拟退火算法借鉴了统计物理学的思想,是一种简单.通用的启发式优化算法,并在理论上具有概率性全局优化性能,因而在科研和工程中得到了广泛的应用. 退火是金属从熔融状态缓慢冷却.最终达到能 ...

最新文章

  1. python学到什么程度可以做兼职-Python学到什么程度就可以找工作?
  2. 好污!杜蕾斯:一份2017年度账单和床上总结求认领...
  3. vue 实现动态增加输入框_vue实现一个6个输入框的验证码输入组件
  4. Luogu P3975 [TJOI2015]弦论
  5. 【十万个编程篇】写文章与“写项目”的差别
  6. ASP.NET Core Api网关Ocelot的中文文档
  7. Java事务管理之JDBC
  8. Java实例---flappy-bird实例[最终版]
  9. Ubuntu中配置虚拟专用网络***
  10. UVa 11572 Unique snowflakes【滑动窗口】
  11. linux进程的线程信息,Linux 下查看线程信息
  12. U8系统UFO报表无法打印
  13. 小甲鱼c语言照片,【跟着小甲鱼学C语言】P14 给大家介绍对象
  14. Node.js meitulu图片批量下载爬虫1.04版
  15. UVa Problem 10247 Complete Tree Labeling (完全树标号)
  16. 【3D目标检测】Rethinking Pseudo-LiDAR Representation
  17. 根据正规文法构建状态转换图
  18. 科学计算机怎么锁死,人类的技术科学被“锁死”,科学家已证实,仍有很多人不相信!...
  19. Wifi设备配网问题
  20. 前端网页生成二维码方法

热门文章

  1. Confluence 6 文档主题合并问答
  2. 阿里云推荐引擎使用教程
  3. Tsung压力测试介绍
  4. 超强PHP集成环境,支持800多个不同PHP版本同时运行,无限自定义添加mysql与php版本...
  5. SQLiteOpenHelper类
  6. Unix高级环境编程—进程控制(一)
  7. Ecshop购物流程结算步骤 显示商品缩略图
  8. 浅谈千万级PV/IP规模高性能高并发网站架构
  9. 使用Flink时从Kafka中读取Array[Byte]类型的Schema
  10. python UnicodeEncodeError: 'gbk' codec can't encode character ...