将单词扰乱为最不易识别的形式


13

我的目标是向玩家显示一个加扰的单词,应将其重新排序为原始形式:

OELHL->你好

我想要一种加扰算法,该算法采用任何给定的单词(> 3或4个字母,可能包含空格)并将其转换为最不易识别的形式。

虽然随机移动每个字母肯定有效,但我注意到并非所有的混洗都是平等的,有些混叠比其他混叠更容易辨认。如果有人知道更好的算法(可能基于语言学),可以保证至少可识别的形式,我将发布此问题。


3
也许您可以尝试确保没有字母停留在其原始位置?
user1306322 2013年


3
最不易识别的形式 ”您如何定义?认得给谁?
Nicol Bolas 2013年

1
@Nicol Bolas的混排形式使仅通过查看它就很难猜出有序词是什么。
user26471

4
@nicolbolas我认为问题的关键是要问是否有任何研究或类似研究来形成针对该问题的一般最佳实践。
Tetrad 2013年

Answers:


26

虽然“ Cmairbgde Uirenvtisy”这个词很脏,但一直受到质疑。

这是sduty sohws,是arpapent lteter szie pyals a rloe。采用wpckelgraihs attmepts到debcrise letrets的关系beewten STES到undtrseand在wihch一个wrod是undersootd的pniot。

那么,如何以一种语言学习?我认为是卑鄙的人:

  1. Asisgn A Szie Vlaue向Ecah Leettr
  2. 对于gievn wdro:
    1. Rembmeer为ecah leettr posioitn提供了有效的解决方案。
    2. 拉尼蒙德(Raniomdze)用以下字句改写字母:
    3. 不要让第一个拳头和Lsat Leettr在Tehir翻身术中向Remian求婚
    4. 尝试使他们的smae szie“解决”。

这是您可以使用的所有附件,因此,我没有任何理由来弥补这种愚蠢,但要确保我的坚韧:

  • Aptemtt最大限度地提高了油品和适度酒糟之间的Leveishtenn距离。蒂斯·科鲁德最大限度地减轻了对丑闻的怀疑。(Pehraps使用Seeuqnce Alimngent
  • 倒转刮刀的气味,将少量的汁液形成其原始位置。(Mbyae笨拙地夸口说bacwkards会发芽吗?)

需要翻译吗?


尽管流行的“ Cmabrigde Uinervtisy”研究可能是个骗局,但对此话题已有一些研究。

这项研究表明,表观字母大小起着一定作用。柳条记录仪的使用试图描述字母集合之间的关系,以理解单词的理解点。

那么如何将其发展为一种算法呢?我认为有一些基本步骤:

  1. 为每个字母分配一个大小值
  2. 对于给定的单词:
    1. 记住每个字母位置的大小值。
    2. 随机限制以下字母:
    3. 不允许第一个和最后一个字母保持在各自的位置
    4. 尝试避免将字母放入相同大小的“插槽”中。

您还可以采用其他策略,尽管我没有研究来支持以下内容,只是我的想法:

  • 尝试最大化原始单词和修改单词之间的Levenshtein距离。这可以使识别单词的难度最大化。(也许使用序列比对
  • 加扰之前,请颠倒字母的顺序,然后将每个字母从其原始位置移几个空格。(也许稍微向后打乱单词会更困难吗?)

5
我要+1,直到看到您提供了翻译。;)
Trevor Powell

1
风格对答案的最佳应用!:)
Tim Holt

今年我从来没有这么努力过。
蓝色巫师

2

这不是一个通用的解决方案,但是通常情况下,如果有一个单词是一个字谜而不是一个拼字游戏,这会使查找原始单词变得更加困难。一旦您的大脑被锁定在原始单词上,就很难把这个单词从脑海中弄出来。

即法令->后退可能比ecdeer->后退更难。

还有一点(尽管我不确定如何实现)是删除常见的字母对。如果字谜在答案中包含“ q”和“ u”,则您要在问题中将它们分开。相反,如果答案中的字母“ t”和“ h”不是彼此相邻,则将它们放在一起将使问题更难解决;反之亦然。您的大脑会自动想到其中带有“ th”的单词。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.