设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2632|回复: 10
打印 上一主题 下一主题

[胡扯] 【版聊2019.3.11】个人年度最差劲算法

[复制链接]

Lv4.逐梦者

梦石
0
星屑
13559
在线时间
2753 小时
注册时间
2014-10-4
帖子
756

R考场第七期纪念奖

1
发表于 2019-3-11 21:57:47 | 显示全部楼层
本来这个作为失败的项目不想发了
但是 既然是这个话题 我一定要参加!
之前关于四季学院猜词我写了一个工具
它根据可能单词的各字母出现次数来提供建议
比方a出现最多 那就猜它 然后有一天
我想到 这样好像不是最优的猜法
因为只有七次猜错的机会
要做的应该是最小化平均错误次数
比方五个单词中猜
STX SXJ SXX XXT XJX
X表示各不相同的字母 重点考察S T J
T和J是对称的
假如先猜S 3/5不损失机会
然后三个没有相同字母得一个一个试
没有S的话剩下两个也得一个一个试
平均损失1.2次机会
假如先猜T或J
因为他俩可以对单词有更好的区分性
平均只损失0.8次机会

我就据次写了一个推荐度算法 概括是
在所有可能出现的字母中一个一个迭代
寻找最小的平均损失值和对应的字母
具体来讲是
假如目标字母是S 目标单词长度五位
把单词群根据S的有无和出现位置分开
比方符合.S...的有8个单词
符合 S..S. 的有4个  ...
没有S的有7个
然后S对应损失的次数就是没有S的单词个数(这些猜错了)加上那些被分开的单词群各自最小的损失次数(这些是后续的可能性)
也就是不断递归直到单词群只有一个
因为这时候损失的次数是0

这算法理论上能给出最好的建议
经过测试也是没出错
可是一旦单词规模扩大 就算不出来了(也和单词长度有关 反正几十个肯定炸了)
因为单词群量一大 递归的量就非常非常大
有多大我也不知道 反正大 大的我难受
而且因为递归对应的单词群都不同
不能保存和利用算过的结果
我也不知道怎么优化(我菜)
最后就不了了之了


从兴致满满 到世界灰暗
只怪自己不够强
还是要慢慢积累

点评

我觉得这道题应该是有题库的……先找出来对应的单词书,然后从里面二分就行(看看猜哪个字母可以最好地分成两堆) 不用太heuristic的算法  发表于 2019-3-11 23:13
还是..算了 我老老实实拿网站猜词不好吗 我们忘了这茬 继续新的开始  发表于 2019-3-11 23:01
我倒是 想了一个替代的办法 就是先不管猜没猜对 这字母能最大程度区分单词群就行 这样就不需要考虑后续可能性 实现简单 就是不知道科学性怎么样  发表于 2019-3-11 23:00
我感觉 这就是不科学的算法..所以是年度失败大作...为了可能提高的那一点点精确度搞的这么麻烦 我走入邪道啦  发表于 2019-3-11 22:54
不检查完单词也不能肯定这个字母不合适 而剩下的字母空位只有两位的时候 就算一个字母只出现一次没没办法直接不考虑..因为可能只有三四个单词了  发表于 2019-3-11 22:53
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-7 03:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表