新年结束了.回想起来唯一留下乐趣的就是在家和朋友玩玩炸金花. 遂有此文. 对不起,我这时候还没有思路. 让我捋一捋. ... ... 捋一捋啊... ... 好了.今天先这样吧: (1)先整理出所有的牌的大小. (2)再整理出所有的牌的花色. (3)来一个生产随机大小的和随机花色的玩意,给每人生成三张牌. //所有的牌的大小 var num = [2, 3, 4, 5, 6, 7, 8, 9, 10, 'J', 'Q', 'K', 'A']; //黑spades, 红hearts,梅 diamo…
app.json: { "pages":[ "pages/index/index" ], "window":{ "navigationBarBackgroundColor": "#333333", "navigationBarTextStyle":"white", "navigationBarTitleText": "炸金花",…
<?php/* * 游戏名称:炸金花(又名三张牌.扎金花) * 开发时间:2009.1.14 * 编 程:多菜鸟 * 来 源:http://blog.csdn.net/kingerq/archive/2009/02/24/3932255.aspx * 说 明: * 利用1到55的随机数除以14后的余数产生牌面, * 所以牌面的图片的排列A-K分别用数字1-13表示, * 不同的花色存放于不同的目录,如1,2,3,4 * 分别用除以14后得到的整数表示,详情参照代码注释. * * 扑克图片下载地址…
题目描述 炸金花是一个风靡全球的扑克游戏,不少人因为这个游戏发了家,而更多的人则输得倾家荡产.为了帮助赌徒们戒掉它,现在决定派你去写一个程序,帮助赌徒们更好的认识这个游戏. 炸金花在这里被简化成这样一个情况:每一个人都会得到随机派发的三张牌(每张牌的点数为整数区间[1,9]中的某个数,点数相同的牌最多只有4张),然后比较大小. 比较大小的方式是这样的: ① 豹子:即三张点数一样的牌,若双方都为豹子,则点数大者为大,豹子大于任何其他情况: ② 顺子:即三张点数连续递增的牌,比如(4,5,6),(1…
前言: 本文将谈谈如何评估测试炸金花的AI, 其实这个也代表一类的问题, 德州扑克也是类似的解法. 本文将谈谈两种思路, 一种是基于基准AI对抗评估, 另一种是基于测试集(人工选定牌谱). 由于炸金花/德州是一类信息不完全的游戏, 而且运气在局数少的情况下, 占据很大比例, 波动有些大. 因此基于测试集来评估, 可能更好, 更准确. 总而言之, 好的AI, 在优势下赢得越多, 在劣势下输得越少, ^_^. 相关文章: 德州扑克AI--Programming Poker AI(译).  系列文章说…
前言: 炸金花这款游戏, 从技术的角度来说, 比德州差了很多. 所以他的AI模型也相对简单一些. 本文从EV(期望收益)的角度, 来尝试构建一个简单的炸金花AI. 相关文章: 德州扑克AI--Programming Poker AI(译).  系列文章说来惭愧, 之前一直叫嚷着写德州AI, 不过可惜懒癌晚期, 一直没去实践, T_T. 相比而言,***简单很多, 也更偏重于运气和所谓的心理对抗. 系列文章: 1. 炸金花游戏的模型设计和牌力评估  2. 炸金花游戏的胜率预估 3. 基于EV(期望…
今天同事发来了一个炸金花的PHP程序,这个代码实现了两个人通过各自的三张牌进行权重计算,得到分数进行比较得到谁的牌大,我觉得里面还有一些问题,代码如下: <?php /** 每张牌的分值为一个2位数,不足2位的补前导0,例如'A':14,‘10':10,'2‘:'02‘,'k‘:13,'7‘:07 将3张牌按点数大小排序(从大到小),凑成一个6位数.例如'A27':140702,‘829':090802,‘JK8':131108,‘2A10':141002 例外,对于对子要将对子的位数放在前两位…
效果: 上传组件非常的酷,但是分析其使用JS写法使用了模板语言的,代码如下: <script type="text/j-template" id="tpl_popbox_ImgPicker_listItem"> <# _.each(dataset,function(url){ #> <li> <span class="img-list-overlay"><i class="img-l…
node.js下四种post提交数据的方式 今天说分享的是其中一种,就是上传文件. Express 4.0 以后,将功能原子化,高内聚,低耦合,独立出了很多中间件 今天主要分享文件上传 对于connect-multiparty ,他是专门处理此类post数据相关的依赖包,也是博客之前使用的方式 github 官方地址: https://github.com/andrewrk/connect-multiparty 安装 npm install connect-multiparty 使用 var m…
两个文件的作用是完全一样的. jquery-2.0.3.js里的代码是没有进行处理的原代码,适合于人们阅读与研究. jquery-2.0.3.min.js里的代码进行过特殊的处理, 如变量的名称基本都写成一个字母,而且格式缩进都被删除了. 所以文件容量比较小(min),一般在网页中调用这个文件. 可以看作:jquery-2.0.3.min.js是jquery-2.0.3.js的编译版本…
AeroGear.js 1.2.0 发布,手机Web应用脚手架 - 开源中国社区 AeroGear.js 1.2.0 发布,手机Web应用脚手架…
js 取得当天0点 / 23:59:59 时间   js 取得今天0点: const start = new Date(new Date(new Date().toLocaleDateString()).getTime()); console.log(start); //Mon Dec 04 2017 00:00:00 GMT+0800 (中国标准时间) 同理算出: js 取得今天 23:59:59 const start = new Date(new Date(new Date().toLoc…
var str = 'Jan 23, 2019 10:25:47 AM';var strnow = new Date(str); 时间戳(timestamp),一个能表示一份数据在某个特定时间之前已经存在的. 完整的. 可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间.使用数字签名技术产生的数据, 签名的对象包括了原始文件信息. 签名参数. 签名时间等信息.广泛的运用在知识产权保护. 合同签字. 金融帐务. 电子报价投标. 股票交易等方面. 时间戳是指格林威治时间1970年01月01日0…
网站图片增强JS插件2.0简单介绍:插件可以增强网站互动能力与外链建设,用户在欣赏图片的同时,把看好的图片直接制作成自己喜欢的样式后通过QQ等传播,增强外链建设,通过用户互动创造外链.(支持:放大缩小.加文字.闪图.叠图.加对话框等等,特别支持GIF动画.)使用方法:复制并粘贴下面的JS代码,放到您的网页的最末端,如果您的网站使用的模板,您也可以复制代码到您的模板,图片编辑功能将会体现在您每一张图片上.<!-- Prcture Editor BEGIN --><script langua…
DAY1:在看HTML5游戏开发实战.手写了一遍乒乓球.自己玩了半小时.实话讲,和本科学的MFC差别不大.通过setInterval函数获取用户的输入 从而允许多用户操作.parseInt把字符串化为整型.用户输入是通过对键盘按下的监听来获取的. 1 2 3 4 5 6 $(document).keydown(function(e){ pingpong.pressedKeys[e.which]=true; }); $(document).keyup(function(e){ pingpong.p…
js & void() & void(0) https://www.runoob.com/js/js-void.html void() <a href="javascript:void(0)">单击此处什么也不会发生</a> <a href="javascript:void(alert('Warning!!!'))">点我!</a> function getValue(){ var a,b,c; a =…
今天是2014年的最后一天,年终总结什么的就不写了.记录一下今天的工作内容.如果不知道phoneGap,那么就不需要往下看了,phoneGap现在已经叫cordova了,叫什么不重要,重要的是它对web移动应用的开发很重要,如果你正在查找关于cordova.js 插件安装方面的工作,那么本文或许对你有用. cordoval.js目前最新的版本是3.7.0,较之前的2.xxx系列,最大的变化是把功能进行了插件化,或者说是模块化也行.这样做的好处呢是开发者可以按需加载自己的功能插件,减小文件体积,同…
/** * GOOGLE地图开发使用工具 * @author BOONYACHENGDU@GMAIL.COM * @date 2013-08-23 * @notice 地图容器的(div)z-index不能小于(lt)0,否则鼠标地图无法进行地图操作(可以看到地图,不过你会万分苦恼(you will be Extremely distressed)) */ (function(){ window.map={}; window.lineFeature=null; window.markers=[]…
在处理js代码判断真假时经常会这么写. 但fun()可能得到的是数字0,这可不是表示的没有值,但是!js中的数字0就是false,非0就是true. 于是0就被无情的当做false了. 已经被这个坑过N回了,做个记录,以防再被坑. 自己碰到的 if(!$('#id').length){} 从上面我们可以看到,0是false,非0是true 那么我们来看上面的代码 1,if只有是true的时候才能进入方法体, 2,true就是非false 3,就是 非0, 4,那么$('#id').length就…
Sencha Cmd v6.2.0.103 Sencha Cmd 提供几种全局开关命令. 在大多数案例中, 第一步是在Sencha SDK基础上创建应用 例如 Ext JS 或 Sencha Touch: sencha -sdk /path/to/sdk generate app MyApp /path/to/myapp Sencha Cmd 支持 Ext JS 4.1.1a 及更高版本 and Sencha Touch 2.1及更高版本. 使用帮助命令获取帮助: sencha help gen…
from:http://visjs.org/timeline_examples.html https://github.com/almende/vis https://github.com/moment/moment/ https://momentjs.com/ <html> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name=&qu…
还记得 10 年前那个稍微青涩的 ExtAspNet 吗,如今她已脱胎换骨,变成了如下 4 款产品: FineUIPro:基于jQuery的经典款ASP.NET WebForms控件,之前的FineUI(开源版)可以直接升级到此版本. FineUIMvc:支持ASP.NET MVC5. FineUICore:支持最新的ASP.NET Core 2.0,跨平台开发和运行,Windows,Mac,Linux一个都跑不了. F.js:由我们自主开发的纯JavaScript库,是上述三个产品使用的前端框…
zepto源码的Array.prototype.reduce有一行 len = t.length >>> 0 当时就很疑惑,知道 >>是移位,那>>>又是什么鬼,还有移位0位又有什么意义呢,带着强烈的好奇心,我就去探究了一下 >>> 0它到底暗藏什么玄机. >> 和 >>>有什么不一样 查了MDN原来>>>是无符号右移,>>是有符号移位,>>有符号移位:该操作符会将第一…
js日期需要yyyy-mm-dd的时候只显示yyyy-m-d,需要前面补充0,之前都是用的判断,感觉非常low.刚刚看到一个方法padStart用了用还不错,padStart是为数值补全指定位数,对应的还有endStart. var d = new Date(); var ye = d.getFullYear(); var mo = (d.getMonth()+1).toString().padStart(2,'0'); var da = d.getDate().toString().padSt…
注意:在js中0为空(false) ,代表空的还有“”,null ,undefined: 如果做判断if(!上面的四种值):返回均为false console.log(!null);// true console.log(!0);//true console.log(!"");// true console.log(!undefined);// true console.log(0=="");//true console.log(0==" ");…
https://nodejs.org/docs/latest/api/addons.html Node.js Addons are dynamically-linked shared objects, written in C or C++, that can be loaded into Node.js using the de style="line-height: 1.5em; font-family: Monaco, Consolas, 'Lucida Console', monospa…
今天在看lodash的源码中slice这个函数实现的时候发现了里面有这么一行代码 length = start > end ? 0 : ((end - start) >>> 0) start >>>= 0 当时就很疑惑,知道 >>是移位,那>>>又是什么鬼,还有移位0位又有什么意义呢,带着强烈的好奇心,我就去探究了一下 >>> 0它到底暗藏什么玄机. >> 和 >>>有什么不一样 查了M…
在js当中,如下注意 if(''==0){ alert("空字符代表false"); } 空字符串代表false 0代表false false==false 结果就为true了…
事件: 事件冒泡行为: 1.@click="show($event)" show:function (ev) { ev.cancelBubble=true; } 2.@click.stop="show()" 事件捕获行为: <div v-on:click.capture="doThis">...</div> 连用:<a v-on:click.stop.prevent="doThat"><…
Modules Stable 在 Node.js 模块系统中,每个文件都会被当做一个独立的模块.假设有一个名为 foo.js: const circle = require('./circle.js'); console.log(`The area of a circle of radius 4 is ${circle.area(4)}`); 第一行中,foo.js加载了同文件夹下的模块circle.js. ·circle.js`中的内容: const { PI } = Math; export…