使用素数比较字谜

6 algorithm math primes numbers

有一个问题是试图看两个独特的字符串是否是彼此的字谜.我考虑过的第一个解决方案是对两个字符串进行排序,看看它们是否相等.

我一直在考虑另一个解决方案,我想讨论是否可行.

我们的想法是为每个角色分配一个数值并对其求和,这样一组唯一的字符就会产生一个唯一的值.当我们测试字谜时,我们不介意"asdf"和"adsf"的校验和是否相同 - 实际上,我们要求它是这样的.但是字符串"aa"和"b"的校验和不应该相等.

我正在考虑将前52个素数分配给字母"a"到"z",然后"A"到"Z"(假设我们只有字母).

如果52个素数集合中任何两个或更多个素数的总和可能导致该集合中存在另一个素数,则上述方案将会中断.

我的疑虑是: -

  1. 是否有任何编号方案可以满足我的要求?
  2. 我不确定所涉及的数学; 是否有可能证明/是否有任何证据表明前52个素数集合中两个或更多个素数的总和至少有一个存在于同一个集合中的值?

谢谢.

Ign*_*ams 15

使用乘法而不是加法.素数是"乘法独特的",但不是"加法独特".

  • 小心,你的号码可以很快变得非常大......第26个素数大约是100,所以zzzzzzzzzz将是100 ^ 10 (7认同)