一个报数游戏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 相关文章推荐
jQuery.query.js 取参数的两点问题分析
Aug 06 Javascript
JQuery 常用方法和事件详细介绍
Apr 18 Javascript
JS通过分析userAgent属性来判断浏览器的类型及版本
Mar 28 Javascript
javascript实现限制上传文件大小
Feb 06 Javascript
jquery拖拽排序简单实现方法(效果增强版)
Feb 16 Javascript
全面解析Bootstrap中tab(选项卡)的使用方法
Jun 06 Javascript
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
Aug 27 Javascript
详解vue组件化开发-vuex状态管理库
Apr 10 Javascript
angular学习之ngRoute路由机制
Apr 12 Javascript
JavaScript数据结构之二叉树的遍历算法示例
Apr 13 Javascript
详解如何在webpack中做预渲染降低首屏空白时间
Aug 22 Javascript
mock.js模拟数据实现前后端分离
Jul 24 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
一个简单计数器的源代码
2006/10/09 PHP
php中大括号作用介绍
2012/03/22 PHP
PHP的5个安全措施小结
2012/07/17 PHP
php统计文章排行示例
2014/03/04 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
ThinkPHP5.0框架验证码功能实现方法【基于第三方扩展包】
2019/03/11 PHP
50个优秀经典PHP算法大集合 附源码
2020/08/26 PHP
JavaScript delete操作符应用实例
2009/01/13 Javascript
基于jquery的表头固定的若干方法
2011/01/27 Javascript
20款非常优秀的 jQuery 工具提示插件 推荐
2012/07/15 Javascript
jQuery方法简洁实现隔行换色及toggleClass的使用
2013/03/15 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
jQuery获得内容和属性示例代码
2014/01/16 Javascript
javascript中的Function.prototye.bind
2015/06/25 Javascript
解决angular的post请求后SpringMVC后台接收不到参数值问题的方法
2015/12/10 Javascript
多个js毫秒倒计时同时进行效果
2016/01/05 Javascript
vue.js将unix时间戳转换为自定义时间格式
2017/01/03 Javascript
微信小程序 form组件详解及简单实例
2017/01/10 Javascript
快速掌握jquery分页插件jqPaginator的使用方法
2017/08/09 jQuery
vue实现导航栏效果(选中状态刷新不消失)
2017/12/13 Javascript
Vue+Element实现表格编辑、删除、以及新增行的最优方法
2019/05/28 Javascript
使用Django Form解决表单数据无法动态刷新的两种方法
2017/07/14 Python
python的Crypto模块实现AES加密实例代码
2018/01/22 Python
python3的输入方式及多组输入方法
2018/10/17 Python
对pandas处理json数据的方法详解
2019/02/08 Python
基于Python的Post请求数据爬取的方法详解
2019/06/14 Python
linux 下selenium chrome使用详解
2020/04/02 Python
Python二元算术运算常用方法解析
2020/09/15 Python
表单button的outline在firefox浏览器下的问题
2012/12/24 HTML / CSS
白俄罗斯女装和针织品网上商店:Presli.by
2019/10/13 全球购物
UNIX文件系统分类
2014/11/11 面试题
打架检讨书100字
2014/01/08 职场文书
地质灾害防治方案
2014/05/14 职场文书
单位作风建设自查报告
2014/10/23 职场文书
房地产销售主管岗位职责
2015/02/13 职场文书
党员公开承诺书2016
2016/03/24 职场文书