等长的两个字符串之间的汉明距离是相应符号不同的位置数。
让P是长度为二进制串n和T是长度为二进制字符串2n-1。我们可以按从左到右的顺序计算到每个长度子字符串n之间的汉明距离,并将它们放入数组(或列表)中。PnT
汉明距离序列示例
让P = 101和T = 01100。从这对中得到的汉明距离的顺序为2,2,1。
亲密关系的定义
现在让我们考虑两个这样的汉明距离序列。说x = (0, 2, 2, 3, 0)和y = (2, 1, 4, 4, 2)作为例子。我们说是x,如果y是close,y <= x <= 2*y或者是x <= y <= 2*x。这里,标量乘法和不等式是按元素进行的。也就是说,对于两个序列A和B,A <= B iff A[i] <= B[i]为所有指数i。
注意,汉明距离序列通过这种比较方式形成了偏序。换句话说,许多序列对既不大于也不等于也不小于或等于彼此。例如(1,2)和(2,1)。
因此,使用上面的示例,(0, 2, 2, 3, 0) <= 2*(2, 1, 4, 4, 2)  = (4, 2, 8, 8, 4)但(0, 2, 2, 3, 0)不大于(2, 1, 4, 4, 2)。也(2, 1, 4, 4, 2)不得小于或等于2*(0, 2, 2, 3, 0) = (0, 4, 4, 6, 0)。结果x和y彼此不亲近。
任务
为了增加n起始位置n=1,请考虑所有可能P的长度为n且T长度为的二进制字符串对2n-1。有2^(n+2n-1)这样的对,因此有许多汉明距离序列。但是,这些序列中的许多序列将是相同的。任务是找到最大的汉明距离序列集的大小,以使没有两个序列彼此靠近。   
您的代码应为的每个值输出一个数字n。
得分了
一般来说,您的分数是n您的代码在5分钟内到达我的计算机的最高分数(但请继续阅读)。时间是用于总运行时间,而不是仅用于该时间n。
为了给出非最佳答案的分数,因为要找到最佳答案可能很困难,所以我们将需要一个稍微微妙的评分系统。您的分数是最高值,n对于任何小于此值的大小,没有其他人为此发布更高的正确答案。例如,如果您输出2, 4, 21而其他人输出,2, 5, 15则您只会得分,1因为其他人对的答案更好n = 2。如果您输出,2, 5, 21那么3无论其他人输出什么,您都将得分,因为这些答案都是最佳的。显然,如果您拥有所有最佳答案,那么您将获得n您发布的最高分数。但是,即使您的答案不是最佳答案,如果没有其他人能打败它,您仍然可以获得分数。  
示例答案和工作示例
(此答案尚未确认。将不胜感激地接受独立验证。)
感谢ETHproductions:
- n = 1给出2。
 - n = 2给出5。
 - n = 3给出21。
 
让我们n = 2更详细地看。在这种情况下,汉明距离序列的完整列表(在此由元组表示)为:
[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
我们可以看到它(0,0)与其他任何元组都不接近。事实上,如果我们采取(0, 0),(0, 1),(1, 0),(2, 1),(1,2)则这些元组没有接近任何其他人。这给出了一个得分5的n  = 2。
对于n = 3不同的汉明距离序列的完整列表是:
 [(0, 0, 0), (0, 0, 1), (0, 1, 1), (0, 1, 2), (0, 1, 3), (0, 2, 1), (0, 2, 2), (0, 2, 3), (0, 3, 0), (0, 3, 1), (1, 0, 0), (1, 0, 1), (1, 0, 2), (1, 1, 0), (1, 1, 1), (1, 1, 2), (1, 1, 3), (1, 2, 0), (1, 2, 1), (1, 2, 2), (1, 2, 3), (1, 3, 0), (1, 3, 1), (1, 3, 2), (2, 0, 1), (2, 0, 2), (2, 0, 3), (2, 1, 0), (2, 1, 1), (2, 1, 2), (2, 1, 3), (2, 2, 0), (2, 2, 1), (2, 2, 2), (2, 2, 3), (2, 3, 1), (2, 3, 2), (2, 3, 3), (3, 0, 2), (3, 0, 3), (3, 1, 0), (3, 1, 1), (3, 1, 2), (3, 2, 0), (3, 2, 1), (3, 2, 2), (3, 3, 2), (3, 3, 3)]
在这些48序列中,我们可以选择一组大小,21以便该组中没有对彼此靠近。
语言和图书馆
您可以使用任何喜欢的语言和库。在可行的情况下,能够运行您的代码会很好,因此请尽可能提供有关如何在Linux中运行/编译代码的完整说明。
我的机器计时将在我的64位机器上运行。这是带有8GB RAM,AMD FX-8350八核处理器和Radeon HD 4250的标准ubuntu安装。这也意味着我需要能够运行您的代码。
领先答案
- 的分数4 2,5,21,83,361由Christian的Sievers。C ++
 - 得分的5 2,5,21,83,372由fənɛtɪk。Java脚本