一个报数游戏js版(约瑟夫环问题)


Posted in Javascript onAugust 05, 2010

这个也算是老题目了,园子里边也曾针对此题有过激烈的讨论,那时候追求用oo来解决。如今既然又有人提了出来,我便抽了点时间写了写自己的想法:

<script type="text/javascript"> 
var a_game = function(pNum){ 
var players = []; 
for(var i=1;i<=pNum;i++){ 
players.push(i); 
} 
var flag=0; 
while(players.length>1){ 
var outPlayerNum = 0,len=players.length; 
for(var i=0;i<len;i++){ 
flag++; 
if(flag==3){ 
flag=0; 
document.writeln("出局:"+players[i-outPlayerNum]); 
players.splice(i-outPlayerNum,1); 
outPlayerNum++; 
} 
} 
} 
return players[0]; 
}; 
document.writeln("<br/>剩下:"+a_game(100)); 
</script>

结果如下:
出局:3 出局:6 出局:9 出局:12 出局:15 出局:18 出局:21 出局:24 出局:27 出局:30 出局:33 出局:36 出局:39 出局:42 出局:45 出局:48 出局:51 出局:54 出局:57 出局:60 出局:63 出局:66 出局:69 出局:72 出局:75 出局:78 出局:81 出局:84 出局:87 出局:90 出局:93 出局:96 出局:99 出局:2 出局:7 出局:11 出局:16 出局:20 出局:25 出局:29 出局:34 出局:38 出局:43 出局:47 出局:52 出局:56 出局:61 出局:65 出局:70 出局:74 出局:79 出局:83 出局:88 出局:92 出局:97 出局:1 出局:8 出局:14 出局:22 出局:28 出局:35 出局:41 出局:49 出局:55 出局:62 出局:68 出局:76 出局:82 出局:89 出局:95 出局:4 出局:13 出局:23 出局:32 出局:44 出局:53 出局:64 出局:73 出局:85 出局:94 出局:5 出局:19 出局:37 出局:50 出局:67 出局:80 出局:98 出局:17 出局:40 出局:59 出局:86 出局:10 出局:46 出局:77 出局:26 出局:71 出局:31 出局:100 出局:58 
剩下:91
Javascript 相关文章推荐
改变状态栏文字的js代码
Jun 13 Javascript
jQuery简单实现图片预加载
Apr 20 Javascript
JavaScript中将数组进行合并的基本方法讲解
Mar 07 Javascript
js document.getElementsByClassName的使用介绍与自定义函数
Nov 25 Javascript
BootStrap selectpicker后台动态绑定数据的方法
Jul 28 Javascript
jQuery实现火车票买票城市选择切换功能
Sep 15 jQuery
Vue2.0用户权限控制解决方案
Nov 29 Javascript
boostrap模态框二次弹出清空原有内容的方法
Aug 10 Javascript
学习React中ref的两个demo示例
Aug 14 Javascript
微信小程序实现一张或多张图片上传(云开发)
Sep 25 Javascript
如何通过vscode运行调试javascript代码
Jul 24 Javascript
typescript配置alias的详细步骤
Aug 12 Javascript
JS 实现完美include载入实现代码
Aug 05 #Javascript
使用ExtJS技术实现的拖动树结点
Aug 05 #Javascript
JavaScript 获取当前时间戳的代码
Aug 05 #Javascript
firefox事件处理之自动查找event的函数(用于onclick=foo())
Aug 05 #Javascript
Js获取事件对象代码
Aug 05 #Javascript
zeroclipboard复制到剪切板的flash
Aug 04 #Javascript
jQuery Study Notes学习笔记 (二)
Aug 04 #Javascript
You might like
JAVA/JSP学习系列之二
2006/10/09 PHP
PHP学习笔记之一
2011/01/17 PHP
PHP运行环境配置与开发环境的配置(图文教程)
2013/06/04 PHP
CI框架验证码CAPTCHA辅助函数用法实例
2014/11/05 PHP
PHP加密解密函数详解
2015/10/28 PHP
PHP创建word文档的方法(平台无关)
2016/03/29 PHP
XHProf报告字段含义的解析
2016/05/17 PHP
yii2 commands模式以及配置crontab定时任务的方法
2017/08/19 PHP
Laravel使用swoole实现websocket主动消息推送的方法介绍
2019/10/20 PHP
基于jquery的tab切换 js原理
2010/04/01 Javascript
javascript 单例/单体模式(Singleton)
2011/04/07 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
2012/08/14 Javascript
jquery 滚动条事件简单实例
2013/07/12 Javascript
JavaScript判断textarea值是否为空并给出相应提示
2014/09/04 Javascript
通过伪协议解决父页面与iframe页面通信的问题
2015/04/05 Javascript
理解JS事件循环
2016/01/07 Javascript
AngularJS入门教程之AngularJS 模板
2016/08/18 Javascript
js 获取本地文件及目录的方法(推荐)
2016/11/10 Javascript
jQuery插件HighCharts绘制2D带Label的折线图效果示例【附demo源码下载】
2017/03/08 Javascript
微信小程序 支付后台java实现实例
2017/05/09 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
vue技术分享之你可能不知道的7个秘密
2018/04/09 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
js实现轮播图特效
2020/05/28 Javascript
python实现内存监控系统
2021/03/07 Python
使用python获取电脑的磁盘信息方法
2018/11/01 Python
Python3 itchat实现微信定时发送群消息的实例代码
2019/07/12 Python
浅谈keras中Dropout在预测过程中是否仍要起作用
2020/07/09 Python
PyCharm设置注释字体颜色以及是否倾斜的操作
2020/09/16 Python
pycharm配置python 设置pip安装源为豆瓣源
2021/02/05 Python
CSS Grid布局教程之浏览器开启CSS Grid Layout汇总
2014/12/30 HTML / CSS
经贸专业毕业生求职信
2014/03/23 职场文书
法人授权委托书
2014/04/03 职场文书
应届生自荐信
2014/06/30 职场文书
2014年店长工作总结
2014/11/17 职场文书
Oracle创建只读账号的详细步骤
2021/06/07 Oracle