Questions tagged «coding-theory»

22
自然派#0-摇滚
目标 创建一个接受输入的程序/函数N,检查N随机整数对是否相对质数,然后返回sqrt(6 * N / #coprime)。 TL; DR 这些挑战是仅需要自然和大脑(也许还有一些可重复使用的资源)才能逼近Pi的算法模拟。如果您在僵尸启示录期间确实需要Pi,那么这些方法不会浪费弹药!还有另外八个挑战。检出沙盒帖子以提出建议。 模拟 我们在模拟什么?好吧,两个随机整数是相对质数(即coprime或gcd == 1)的概率是6/Pi/Pi,因此计算Pi的自然方法是挖出两个桶(或少数几个)的岩石。数他们;看看他们的gcd是否为1;重复。这样做后,一对夫妇很多次,sqrt(6.0 * total / num_coprimes)会趋向Pi。如果计算世界末日后的平方根使您感到紧张,请不要担心!有牛顿法。 我们如何模拟这一点? 接受输入 N 请执行以下N次数: 均匀生成随机正整数,i并且j 用 1 <= i , j <= 10^6 如果gcd(i , j) == 1:result = 1 其他: result = 0 取N结果的总和,S 返回 sqrt(6 * N / S) 规格 输入值 …
39 code-golf  math  random  pi  approximation  popularity-contest  code-golf  sequence  number-theory  binary  coding-theory  code-golf  math  3d  code-golf  code-golf  math  number  code-golf  kolmogorov-complexity  code-golf  ascii-art  graphical-output  binary-tree  code-golf  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  array-manipulation  hexadecimal  code-golf  math  number  set-theory  code-golf  math  arithmetic  number-theory  integer  code-golf  string  kolmogorov-complexity  code-golf  math  sequence  arithmetic  decision-problem  code-golf  code-golf  ascii-art  code-golf  array-manipulation  parsing  code-golf  string  ascii-art  kolmogorov-complexity  code-challenge  code-golf  sequence  code-golf  number  array-manipulation  sorting  code-golf  string  function  code-golf  arithmetic  code-golf  math  sequence  number-theory  primes  restricted-source  javascript  code-challenge  polyglot  rosetta-stone  code-golf  code-golf  regular-expression  code-golf  math  code-golf  math  primes  code-golf  ascii-art  kolmogorov-complexity  binary  code-golf  math  sequence  code-golf  sequence  subsequence  code-golf  string  code-golf  parsing  music  code-golf  grid  game  path-finding  board-game  code-golf  string  binary  code-golf  array-manipulation  balanced-string  code-golf  code-golf  algorithm  code-golf  string  number  arithmetic  array-manipulation  code-golf  array-manipulation  binary-tree  tree-traversal  code-golf  code-golf  tips  code-golf  string  base-conversion  code-golf  tips  s.i.l.o.s  code-golf  string  ascii-art  code-golf  code-challenge  code-golf  game 

14
递增格雷码
介绍 甲格雷码是二进制表示的替代,其中许多是通过切换只有一个位,而不是比特的可变量的递增。以下是一些格雷码及其十进制和二进制等效项: decimal | binary | gray ------------------------- 0 | 0 | 0 ------------------------- 1 | 1 | 1 ------------------------- 2 | 10 | 11 ------------------------- 3 | 11 | 10 ------------------------- 4 | 100 | 110 ------------------------- 5 | 101 | 111 ------------------------- 6 | 110 | 101 ------------------------- …

7
使用Hamming(7,4)纠正错误
Hamming(7,4)代码可以追溯到1950年。当时,Richard Hamming在贝尔实验室担任数学家。汉明每个星期五都设置计算机进行一系列计算,并在下周一收集结果。使用奇偶校验,这些机器能够在计算过程中检测到错误。沮丧,因为他经常收到错误消息,所以汉明决定改进错误检测并发现了著名的汉明代码。 海明力学(7,4) 汉明码的目的是创建一组重叠的奇偶校验位,以便可以检测和纠正数据位或奇偶校验位中的单个错误(翻转一位)。仅当发生多个错误时,汉明码才能恢复原始数据。它可能根本不会注意到错误,甚至可能会错误地纠正它。因此,在这一挑战中,我们将仅处理单位错误。 作为汉明代码的示例,我们将看一下汉明(7,4)代码。除4位数据外,d1, d2, d3, d4它还使用3个奇偶校验位p1, p2, p3,这些奇偶校验位使用以下公式计算: p1 = (d1 + d2 + d4) % 2 p2 = (d1 + d3 + d4) % 2 p3 = (d2 + d3 + d4) % 2 产生的代码字(数据+奇偶校验位)的格式为p1 p2 d1 p3 d2 d3 d4。 检测错误的方法如下。您重新计算奇偶校验位,并检查它们是否与接收的奇偶校验位匹配。在下表中,您可以看到,各种单一位错误都会产生奇偶校验位的不同匹配。因此,可以定位和纠正每个单位错误。 error in bit | p1 …

3
查找字符串中的模式
在这种挑战下,您的任务是找到具有给定结构的子字符串。 输入项 您的输入应为两个非空的字母数字字符串,一个模式 p和一个text t。这个想法是,的每个字符都p代表一个连续的非空子字符串,t该子字符串彼此相邻出现,并p表示它们的串联。相同的字符对应于相同的子字符串。例如,模式aa代表任何非空正方形(通过将较短的字符串与其自身连接而获得的字符串)。因此,模式aa可以匹配子字符串byebye,并且每次a匹配bye。 输出量 如果文本t包含p匹配的子字符串,则您的输出应为该子字符串,并:在与的字符相对应的字符串之间插入冒号p。例如,如果我们有t = byebyenow和p = aa,那么bye:bye它是可接受的输出。匹配子字符串可能有多个选择,但是您只能输出其中之一。 如果t不包含匹配的子字符串,则您的输出将是悲伤的表情:(。 规则和说明 的不同字符p可以对应相同的子字符串,因此p = aba可以匹配字符串AAA。请注意,这些字符必须对应于非空字符串;特别是,如果p长于t,则输出必须为:(。 您可以编写完整的程序或函数,还可以更改两个输入的顺序。最低字节数获胜,并且不允许出现标准漏洞。 测试用例 以格式给出pattern text -> output。注意,可能存在其他可接受的输出。 a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> re:re:re xx ABAAAB -> A:A MMM ABABBAABBAABBA -> ABBA:ABBA:ABBA x33x 10100110011001 -> 10:1001:1001:10 …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

7
编码霍夫曼!
否则他会怒气冲天,把你的房子炸毁! 那完全无关紧要。这个挑战实际上与霍夫曼编码有关。要点是给定文本中字符的频率被用来使其表示更短。换句话说,假设我们的字母是a通过z和空格。那是27个字符。它们中的每一个都可以仅用5位进行唯一编码,因为5位有足够的空间容纳32个字符。但是,在许多情况下(例如英语或一般语言),某些字符比其他字符更频繁。对于更频繁的字符,我们可以使用较少的位,对于较不频繁的字符,我们可以使用更多的位。如果做对了,总体上可以节省位数,并且仍然可以唯一地重建原始文本。 让我们以“这个问题与霍夫曼编码有关”为例。该文本的长度为37个字符,通常为37 * 8 = 296位,但是如果每个字符仅使用5位,则只有37 * 5 = 185位。记住这一点。 这是文本中每个字符及其频率的(排序)表,从最频繁到最不频繁(其中_代表空格)排序: _ 5 i 4 n 3 o 3 s 3 t 3 u 3 a 2 f 2 h 2 b 1 c 1 d 1 e 1 g 1 m 1 q 1 相关的最佳编码可以是: _ 101 i …

1
Hadamard问题的优化版本
首先,一些定义。 甲Hadamard矩阵是方阵,其条目是+1或-1,并且其行是相互正交的。所述哈达玛猜想提出的顺序4k的Hadamard矩阵存在每一个正整数k。 甲循环矩阵是一类特殊的矩阵,其中每一行向量是一个旋转元件的相对前述行向量权。那就是矩阵是由它的第一行定义的。 据已知的是,除了4×4的矩阵,有没有循环Hadamard矩阵。 具有m行和n> = m列的矩阵是局部循环,如果是一些循环矩阵的第一m行。 任务 对于从2开始的每个偶数n,输出具有+ -1项和n列的最大部分循环矩阵的大小,该矩阵的所有行都相互正交。 得分了 您的分数是最高的n,因此k <= n,没有任何人比您发布的正确答案更高。显然,如果您拥有所有最佳答案,那么您将获得n您发布的最高分数。但是,即使您的答案不是最佳答案,如果没有其他人能打败它,您仍然可以获得分数。 语言和图书馆 您可以使用任何喜欢的语言和库。在可行的情况下,能够运行您的代码将是一件好事,因此,请尽可能提供有关如何在Linux中运行/编译代码的完整说明。 领先的作品 Mitch Schwartz在Python中撰写的64
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.