Questions tagged «cipher»

对于以某种方式与使用经典(笔和纸)密码编码消息有关的挑战。对于AES等现代密码,请改用[encryption]标签。

16
增量密码
此任务非常简单,并使用了三个不同的“操作员”字符。你的任务是,给定的字母简单的顺序,请执行以下任务使用对它进行编码<,>,*。您可以选择使用大写或小写字母,而不必同时使用两者。 密码说明 密码很简单,您使用递增和递减运算从字母1到结尾字母移动, *具有“提交”功能。“增加”的运算符为>,“减少” 的运算符为<。 一个使用单词的例子adbc: 从单词的第一个字母开始,输出该字母。 a 接下来,使用>和<(例如Brainfuck)将当前字母“导航”到下一个字母。a>将导致a该字母“ 加1” b。a<会z因为您降低字母(它会自动换行,所以您必须始终选择导致最少操作数的方向)而导致。 输出和的正确最小化组合后<,>输出a *表示我们已经到达下一个字母。 编码步骤adbc如下: a # a a>>>* # ad a>>>*<<* # adb a>>>*<<*>* # adbc 例子 编码步骤aza如下: a # a a<* # az a<*>* # aza 更多示例: "abcdef" = "a>*>*>*>*>*" "zyaf" = "z<*>>*>>>>>*" "zzzzzz" = "z*****" "z" = "z" …
19 code-golf  cipher 

14
大写密码
您的任务是解密由[32..126]范围内的可打印ASCII字符组成的非空字符串。 读取每个字符的字符串字符: 每次遇到小写字母时,请将其与大写的下一个字母相关联,以“ A”开头 每次遇到大写字母时,请将其替换为与之关联的小写字母 其他字符不需要任何特殊处理,并且保持不变 例 对于输入字符串"endlAsEBAEE": 联想e到A,n到B,d到C和l到D 替换A为e 关联s到E 替换EBAEE为sness 最终输出为"endlessness"。 澄清和规则 确保输入字符串最多包含每个小写字母一次。所有其他实例将替换为相应的大写字母。 输入字符串保证有效。(您不会遇到尚未与小写字母关联的大写字母。) 一旦将大写字母与小写字母相关联,该字符串以后可能会使用也可能不会使用。例如,在以上示例中未使用C和D。 这是代码高尔夫球,因此最短答案以字节为单位! 测试用例 输入: abcd honk! ABCD! abrAcAdABCA endlAsEBAEE helCo wDrCd! dermatoglyphics progBamFinD AuzJles & cCdL DCKf sphinx of black quKrtz, jOdge my vGw. K NODLM IPGZE HGF SOWBA GYVP QCV JKRX TGU. petBr …

5
二进制卷积
二进制卷积由数字描述M,并应用于数字N。对于的二进制表示形式中的每个位M,如果将该位设置为(1),则通过将与相应位中的相应位相邻的两个位进行XOR N(在必要时进行环绕)来给出输出中的相应位。如果未设置该位(0),则输出中的相应位由中的相应位给出N。 一个有效的示例(具有8位值): 让N = 150,M = 59。它们的二进制表示形式分别为10010110和00111011。 根据M的二进制表示形式,卷积0、1、3、4和5。 位0的结果由对位1和7进行XOR运算得出(因为我们进行了环绕),得出1。 位1的结果由位0和2的XOR运算得出0。 位2的结果由原始位2给出,即1。 第3位的结果由第2位和第4位的XOR运算得出0。 位4的结果由位3和5的XOR运算得出0。 第5位的结果由第4位和第6位的XOR运算得出1。 位6和7的结果由原始位6和7给出,得出0和1。 因此,输出为10100110(166)。 挑战 给定N和M,输出执行Mon上描述的二进制卷积的结果N。输入和输出可以采用任何方便,一致且明确的格式。N并且M将始终在(包括)范围内[0, 255](8位无符号整数),并且应将其二进制表示形式填充为8位以执行二进制卷积。 测试用例 150 59 -> 166 242 209 -> 178 1 17 -> 0 189 139 -> 181 215 104 -> 215 79 214 -> 25 190 207 -> 50 61 …
15 code-golf  binary  integer  bitwise  code-golf  rational-numbers  code-golf  string  palindrome  code-golf  ascii-art  code-golf  code-golf  string  fibonacci  code-golf  math  sequence  code-golf  code-golf  string  palindrome  code-golf  string  code-golf  math  primes  source-layout  code-golf  sequence  binary  integer  code-golf  math  arithmetic  game  code-golf  restricted-source  palindrome  code-golf  restricted-source  palindrome  code-golf  combinatorics  binary  code-golf  string  math  code-golf  ascii-art  number  code-golf  cipher  code-golf  base-conversion  counting  code-golf  sequence  random  classification  code-golf  string  subsequence  code-golf  permutations  code-golf  string  code-golf  string  cipher  code-golf  kolmogorov-complexity  arithmetic  integer  code-golf  quine  markov-chain  code-golf  string  code-golf  code-golf  ascii-art  maze 

13
电脑密码
介绍: 在我小时候编写的文档中,我存储了许多不同的密码,我选择了一些我认为最适合挑战的密码(不太琐碎,也不太难),并将它们转变为挑战。它们中的大多数仍处于沙箱中,我不确定是否要全部发布还是仅发布其中几个。但是,这是第一个开始的事情。 计算机密码将给定的文本加密为给定的“随机”字符组length。如果这样的组包含一个数字,它将使用该数字索引到自己的加密字符组中。如果组中没有数字,则表示使用了第一个字符。 例如,假设我们要加密this is a computer cipher给定长度的文本5。这是一个潜在的输出(请注意:在下面的示例中,数字为1索引): t h i s i s a c o m p u t e r c i p h e r (without spaces of course, but added as clarification) qu5dt hprit k3iqb osyw2 jii2o m5uzs akiwb hwpc4 eoo3j muxer z4lpc 4lsuw 2tsmp …

30
从原动力中恢复原动力
定义:素数幂是自然数,可以以p n的形式表示,其中p是素数,n是自然数。 任务:给定素数p n > 1,返回素数p。 测试用例: input output 9 3 16 2 343 7 2687 2687 59049 3 计分:这是代码高尔夫球。以字节为单位的最短答案将获胜。
13 code-golf  arithmetic  primes  king-of-the-hill  python  board-game  code-golf  number  subsequence  code-golf  ascii-art  code-golf  array-manipulation  decision-problem  grid  fastest-algorithm  logic-gates  logic  code-golf  cards  code-golf  rational-numbers  code-golf  math  number  sequence  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  code-golf  number  sequence  decision-problem  code-golf  ascii-art  number  code-challenge  sequence  arithmetic  sorting  code-golf  date  fastest-algorithm  code-golf  string  number  random  combinatorics  code-golf  combinatorics  code-golf  ascii-art  base-conversion  code-golf  array-manipulation  code-golf  string  code-golf  string  number  arithmetic  code-golf  kolmogorov-complexity  code-golf  string  array-manipulation  json  code-golf  puzzle-solver  code-golf  binary  graph-theory  code-golf  arithmetic  haskell  code-golf  string  cipher  code-golf  code-golf  string  parsing  alphabet  code-golf  string  code-golf  ascii-art  code-golf  string  number  code-golf  string  balanced-string 

10
ASCII奇/偶密码
我们将通过以下伪代码定义ASCII奇/偶密码: Define 'neighbor' as the characters adjacent to the current letter in the string If the one of the neighbors is out of bounds of the string, treat it as \0 or null Take an input string For each letter in the string, do If the 0-based index of the …

13
斐波那契产品
您可以将大于0的数字分解为正Fibonacci数字的唯一和。在这个问题中,我们通过重复减去最大可能的正斐波那契数来做到这一点。例如: 1 = 1 2 = 2 3 = 3 4 = 3 + 1 12 = 8 + 3 + 1 13 = 13 100 = 89 + 8 + 3 现在,我将斐波那契乘积称为与上面相同的列表,但加法运算被乘积代替。例如,f(100) = 89 * 8 * 3 = 2136。 编写一个给定正整数n的程序或函数,该函数将返回该数字的斐波那契乘积。 测试用例: 1: 1 2: 2 3: 3 4: …
13 code-golf  math  sequence  fibonacci  code-golf  word  code-golf  cipher  code-golf  string  math  subsequence  code-golf  regular-expression  code-golf  brainfuck  assembly  machine-code  x86-family  code-golf  math  factorial  code-golf  math  geometry  code-golf  math  arithmetic  array-manipulation  math  number  optimization  stack  metagolf  code-golf  tips  assembly  code-golf  tips  lisp  code-golf  number-theory  path-finding  code-golf  number  sequence  generation  code-golf  math  geometry  code-golf  grid  permutations  code-golf  code-golf  graphical-output  geometry  fractal  knot-theory  code-golf  math  arithmetic  code-golf  interpreter  balanced-string  stack  brain-flak  code-golf  math  set-theory  code-golf  math  array-manipulation  code-golf  code-golf  string  natural-language  code-golf  code-golf  math  linear-algebra  matrix  code-golf  string  encode 

14
时钟(音译)密码
介绍: 在我小时候编写的文档中,我存储了许多不同的密码,我选择了一些我认为最适合挑战的密码(不太琐碎,也不太难),并将它们转变为挑战。它们中的大多数仍位于沙箱中,我不确定是否要全部发布还是仅发布其中几个。这是第三个也是最简单的一个(在我之前发布的Computer Cipher和Trifid Cipher之后)。 对于时钟密码,我们使用以下图像对文本进行加密: 因此,类似的句子this is a clock cipher将变为: t h i s i s a c l o c k c i p h e r (without additional spaces of course, but added as clarification) 19:7:8:18:00:8:18:00:AM:00:2:11:14:2:10:00:2:8:15:7:4:17 挑战: 给定一个字符串sentence_to_encipher,如上所述将其加密。 挑战规则: 您可以假定sentence_to_encipherwill只包含字母和空格。 您可以使用完整的小写字母或完整的大写字母(请说明您在答案中使用了哪一个)。 你不允许添加前导零的单个数字加密信件b通过j,但两个零00是强制性的空间。 您应将其:用作分隔符,并且:不允许使用其他前导或尾随。 只要保持一致,就可以使用小写字母am,pm而不能使用大写字母AM和PM。 通用规则: 这是代码高尔夫球,因此最短答案以字节为单位。 不要让代码高尔夫球语言阻止您使用非代码高尔夫球语言发布答案。尝试针对“任何”编程语言提出尽可能简短的答案。 标准规则适用于具有默认I …

2
Marcel Proust和Markov解密安全服务的T9文本
好像这个挑战可能在本质上是更多的Python风格 ... 不需要先验的Markov链或加密技术知识。 您是间谍,需要从英国安全服务M1S获得一些关键信息。M1S的代理很清楚,他们的Wi-Fi信号可以被拦截,利用了他们的Android / iOS安全漏洞等,因此他们所有人都使用Nokia 3310来传输使用T9自动完成功能键入的文本信息。 您以前曾破解过要交付给情报机构的电话,并在光荣的塑料键盘下安装了键盘记录程序,所以现在您收到的数字序列与他们键入的字母相对应,因此“ 鹰离开了巢穴提醒代理商 ” 84303245304270533808430637802537808430243687 可是等等!某些T9序列含糊不清(“ 6263”可能是“名称”,“鬃毛”或“双簧管”;模糊性越大,可疑性就越大!),那么您该怎么办?您知道,M1S唯一使用的入学考试是在15秒内总结Marcel Proust的杰作“回忆过去的事”,因此您要根据整个主厨中的频率分布来选择上一个单词之后的单词。普鲁斯特的魅力! 您可以破解代码并获取原始消息吗? T9的原理 T9自动完成机制可以描述如下。如上图所示,它将字母字符映射为数字。 abc -> 2 def -> 3 ghi -> 4 jkl -> 5 mno -> 6 pqrs -> 7 tuv -> 8 wxyz -> 9 <space> -> 0 <other> -> <is deleted> T9解密器接收到一个数字序列,并尝试猜测可以通过这些按键键入的单词。它可能使用标准的频率表,但我们要进一步走一步,并使用马尔可夫链预测下一个单词! 学习样本 …

6
围栏密码
编写两个程序: -一个程序,读取一个字符串和一个密钥,并使用该密钥将该字符串编码为栅栏密码。-同样,编写一个用于反向功能的程序:使用钥匙解密铁栅栏。 对于那些不知道什么是栅栏密码的人,它基本上是一种以螺旋方式创建线性图案的方式写入纯文本的方法。示例-当使用键3将“ FOOBARBAZQUX”设置为栅栏时。 F . . . A . . . Z . . . . O . B . R . A . Q . X O . . . B . . . U 逐行读取上述螺旋,密文变为“ FAZOBRAQXOBU”。 阅读更多内容- 铁路围栏密码-维基百科。 欢迎使用任何语言的代码。 以字节为单位的最短答案将获胜。
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.