查找数组的总数
Posted
技术标签:
【中文标题】查找数组的总数【英文标题】:Finding total number of arrays 【发布时间】:2016-10-09 02:46:15 【问题描述】:我有一个由 N 个整数组成的数组 A。我还有一个整数 K。 我想通过精确地应用以下操作 K 次来找出我可以从数组 A 中获得的不同数组的数量。
在数组中选择一些元素并乘以 -1数组 A=[2,3,2] 和 k=2 我有四个可能的数组
1.[2,3,2]
2.[-2,-3,2]
3.[-2,3,-2]
4.[2,-3,-2]
这可以计算为 ∑nCr 的总和,其中 r 是 k,k-2,k-4....。
编辑
但是对于正数和负数的组合,假设我们的数组是 A=[-1,2,3] 和 k=3,所有可能的组合都是
1.[1,2,3]
2.[-1,-2,3]
3.[-1,2,-3]
4.[1,-2,-3]
一共是4个数组,一共也是4个数组。
我刚刚提交了我认为应该正确的代码
int main()
int n,k;
int arr[11];
arr[0]=1;
for (int i=1;i<=10;i++)
arr[i]=arr[i-1]*i;
//cout<<arr[i]<<" ";
long int ans=0;
cin>>n>>k; / n for number of elements and k for operations
for (int i=0;i<n;i++)
int num; array element
cin>>num;
int i=(k%2==0?2:1);
for(;i<=k;i+=2)
ans=ans+arr[n]/(arr[k]*arr[n-k]);
if(k%2==0)
ans=arr[n]/(arr[k]*arr[n-k])+1;
if(n==1 && k%2==1)
ans=1;
cout<<ans;
但它给出了错误的答案。请帮我解决这个问题。
【问题讨论】:
现有标志如何改变您的算法?-2,-3,-2
不正常有什么原因吗?
在您的第二个示例中,2.[-1,-2,3]
和 4.[-1,-2,3]
是重复的,它们应该重复吗?
现在3.[-1,2,-3
和5.[-1,2,-3]
是一样的
@Michi 我的错。已更新。
【参考方案1】:
这迎合了巨大的多维设置。一些蛮力编码,使用并行数组处理语言@987654321@ 揭示了以下数量的独特结果,对于 K = 1...10 和 N = 1...14:
┌────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬────┬────┬────┬────┬────┐
│ │N=1│N=2│N=3│N=4│N=5│N=6│N=7│N=8│N=9│N=10│N=11│N=12│N=13│N=14│
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=1 │1 │2 │3 │4 │5 │6 │7 │8 │9 │10 │11 │12 │13 │14 │
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=2 │1 │2 │4 │7 │11 │16 │22 │29 │37 │46 │56 │67 │79 │92 │
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=3 │1 │2 │4 │8 │15 │26 │42 │64 │93 │130 │176 │232 │299 │378 │
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=4 │1 │2 │4 │8 │16 │31 │57 │99 │163│256 │386 │562 │794 │1093│
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=5 │1 │2 │4 │8 │16 │32 │63 │120│219│382 │638 │1024│1586│2380│
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=6 │1 │2 │4 │8 │16 │32 │64 │127│247│466 │848 │1486│2510│4096│
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=7 │1 │2 │4 │8 │16 │32 │64 │128│255│502 │968 │1816│3302│5812│
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=8 │1 │2 │4 │8 │16 │32 │64 │128│256│511 │1013│1981│3797│7099│
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=9 │1 │2 │4 │8 │16 │32 │64 │128│256│512 │1023│2036│4017│7814│
├────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼────┼────┼────┼────┼────┤
│K=10│1 │2 │4 │8 │16 │32 │64 │128│256│512 │1024│2047│4083│8100│
└────┴───┴───┴───┴───┴───┴───┴───┴───┴───┴────┴────┴────┴────┴────┘
虽然它确实存在,但人们看不到任何明显的模式。我们可以看到的一件事是,当执行足够多次的否定时(即 K 是“耗尽”数组),我们似乎达到了 2^(N-1) 个独特的结果(即 1、2、4、8、16等)。
假设我们是暴力破解的。如果我们有一个长度为 4 的数组(即 N=4)且 K=1,则数组的元素 1、2、3 或 4 可以取反:
┌─┬─┬─┬─┐
│1│2│3│4│
└─┴─┴─┴─┘
如果 K=2,我们得到一个新的 a 维度(现在是一个二维问题),现在有 16 个可能的索引对用于否定:
┌───┬───┬───┬───┐
│1 1│1 2│1 3│1 4│
├───┼───┼───┼───┤
│2 1│2 2│2 3│2 4│
├───┼───┼───┼───┤
│3 1│3 2│3 3│3 4│
├───┼───┼───┼───┤
│4 1│4 2│4 3│4 4│
└───┴───┴───┴───┘
例如 [4 2] 表示 array[4] 和 array[2] 都将乘以 -1。
设置 K=3 使其成为 3 维:
┌─────┬─────┬─────┬─────┐┌─────┬─────┬─────┬─────┐┌─────┬─────┬─────┬─────┐┌─────┬─────┬─────┬─────┐
│1 1 1│1 1 2│1 1 3│1 1 4││2 1 1│2 1 2│2 1 3│2 1 4││3 1 1│3 1 2│3 1 3│3 1 4││4 1 1│4 1 2│4 1 3│4 1 4│
├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤
│1 2 1│1 2 2│1 2 3│1 2 4││2 2 1│2 2 2│2 2 3│2 2 4││3 2 1│3 2 2│3 2 3│3 2 4││4 2 1│4 2 2│4 2 3│4 2 4│
├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤
│1 3 1│1 3 2│1 3 3│1 3 4││2 3 1│2 3 2│2 3 3│2 3 4││3 3 1│3 3 2│3 3 3│3 3 4││4 3 1│4 3 2│4 3 3│4 3 4│
├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┤
│1 4 1│1 4 2│1 4 3│1 4 4││2 4 1│2 4 2│2 4 3│2 4 4││3 4 1│3 4 2│3 4 3│3 4 4││4 4 1│4 4 2│4 4 3│4 4 4│
└─────┴─────┴─────┴─────┘└─────┴─────┴─────┴─────┘└─────┴─────┴─────┴─────┘└─────┴─────┴─────┴─────┘
...例如 [1 1 1] 表示数组 [1] 将连续乘以 -1 三次。现在我们还可以看到,这 64 种可能性中有一些是重复的。
在进行蛮力计算时,实际上涉及到 10 维数据。随着数据的增长,最终系统内存不足。
数组包含什么数值并不重要。相反,我们当然只需要弄清楚符号的变化,即。与 -1 相乘。以下是 K = 1...5 和 N = 1...5 的唯一组合的可能数量:
┌───┬────┬───────────┬───────────────────────────────┬─────────────────────────────────────────────────────────────────────────────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ │N=1 │N=2 │N=3 │N=4 │N=5 │
├───┼────┼───────────┼───────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│K=1│┌──┐│┌────┬────┐│┌──────┬──────┬──────┐ │┌────────┬────────┬────────┬────────┐ │┌──────────┬──────────┬──────────┬──────────┬──────────┐ │
│ ││-1│││-1 1│1 -1│││-1 1 1│1 -1 1│1 1 -1│ ││-1 1 1 1│1 -1 1 1│1 1 -1 1│1 1 1 -1│ ││-1 1 1 1 1│1 -1 1 1 1│1 1 -1 1 1│1 1 1 -1 1│1 1 1 1 -1│ │
│ │└──┘│└────┴────┘│└──────┴──────┴──────┘ │└────────┴────────┴────────┴────────┘ │└──────────┴──────────┴──────────┴──────────┴──────────┘ │
├───┼────┼───────────┼───────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│K=2│┌─┐ │┌───┬─────┐│┌─────┬───────┬───────┬───────┐│┌───────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ │┌─────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┐ │
│ ││1│ ││1 1│-1 -1│││1 1 1│-1 -1 1│-1 1 -1│1 -1 -1│││1 1 1 1│-1 -1 1 1│-1 1 -1 1│-1 1 1 -1│1 -1 -1 1│1 -1 1 -1│1 1 -1 -1│ ││1 1 1 1 1│-1 -1 1 1 1│-1 1 -1 1 1│-1 1 1 -1 1│-1 1 1 1 -1│1 -1 -1 1 1│1 -1 1 -1 1│1 -1 1 1 -1│1 1 -1 -1 1│1 1 -1 1 -1│1 1 1 -1 -1│ │
│ │└─┘ │└───┴─────┘│└─────┴───────┴───────┴───────┘│└───────┴─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘ │└─────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┘ │
├───┼────┼───────────┼───────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│K=3│┌──┐│┌────┬────┐│┌──────┬──────┬──────┬────────┐│┌────────┬────────┬────────┬────────┬──────────┬──────────┬──────────┬──────────┐│┌──────────┬──────────┬──────────┬──────────┬──────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┐ │
│ ││-1│││-1 1│1 -1│││-1 1 1│1 -1 1│1 1 -1│-1 -1 -1│││-1 1 1 1│1 -1 1 1│1 1 -1 1│1 1 1 -1│-1 -1 -1 1│-1 -1 1 -1│-1 1 -1 -1│1 -1 -1 -1│││-1 1 1 1 1│1 -1 1 1 1│1 1 -1 1 1│1 1 1 -1 1│1 1 1 1 -1│-1 -1 -1 1 1│-1 -1 1 -1 1│-1 -1 1 1 -1│-1 1 -1 -1 1│-1 1 -1 1 -1│-1 1 1 -1 -1│1 -1 -1 -1 1│1 -1 -1 1 -1│1 -1 1 -1 -1│1 1 -1 -1 -1│ │
│ │└──┘│└────┴────┘│└──────┴──────┴──────┴────────┘│└────────┴────────┴────────┴────────┴──────────┴──────────┴──────────┴──────────┘│└──────────┴──────────┴──────────┴──────────┴──────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┘ │
├───┼────┼───────────┼───────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│K=4│┌─┐ │┌───┬─────┐│┌─────┬───────┬───────┬───────┐│┌───────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬───────────┐│┌─────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬───────────┬─────────────┬─────────────┬─────────────┬─────────────┬─────────────┐│
│ ││1│ ││1 1│-1 -1│││1 1 1│-1 -1 1│-1 1 -1│1 -1 -1│││1 1 1 1│-1 -1 1 1│-1 1 -1 1│-1 1 1 -1│1 -1 -1 1│1 -1 1 -1│1 1 -1 -1│-1 -1 -1 -1│││1 1 1 1 1│-1 -1 1 1 1│-1 1 -1 1 1│-1 1 1 -1 1│-1 1 1 1 -1│1 -1 -1 1 1│1 -1 1 -1 1│1 -1 1 1 -1│1 1 -1 -1 1│1 1 -1 1 -1│1 1 1 -1 -1│-1 -1 -1 -1 1│-1 -1 -1 1 -1│-1 -1 1 -1 -1│-1 1 -1 -1 -1│1 -1 -1 -1 -1││
│ │└─┘ │└───┴─────┘│└─────┴───────┴───────┴───────┘│└───────┴─────────┴─────────┴─────────┴─────────┴─────────┴─────────┴───────────┘│└─────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴───────────┴─────────────┴─────────────┴─────────────┴─────────────┴─────────────┘│
├───┼────┼───────────┼───────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│K=5│┌──┐│┌────┬────┐│┌──────┬──────┬──────┬────────┐│┌────────┬────────┬────────┬────────┬──────────┬──────────┬──────────┬──────────┐│┌──────────┬──────────┬──────────┬──────────┬──────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬────────────┬──────────────┐│
│ ││-1│││-1 1│1 -1│││-1 1 1│1 -1 1│1 1 -1│-1 -1 -1│││-1 1 1 1│1 -1 1 1│1 1 -1 1│1 1 1 -1│-1 -1 -1 1│-1 -1 1 -1│-1 1 -1 -1│1 -1 -1 -1│││-1 1 1 1 1│1 -1 1 1 1│1 1 -1 1 1│1 1 1 -1 1│1 1 1 1 -1│-1 -1 -1 1 1│-1 -1 1 -1 1│-1 -1 1 1 -1│-1 1 -1 -1 1│-1 1 -1 1 -1│-1 1 1 -1 -1│1 -1 -1 -1 1│1 -1 -1 1 -1│1 -1 1 -1 -1│1 1 -1 -1 -1│-1 -1 -1 -1 -1││
│ │└──┘│└────┴────┘│└──────┴──────┴──────┴────────┘│└────────┴────────┴────────┴────────┴──────────┴──────────┴──────────┴──────────┘│└──────────┴──────────┴──────────┴──────────┴──────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴────────────┴──────────────┘│
└───┴────┴───────────┴───────────────────────────────┴─────────────────────────────────────────────────────────────────────────────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
这无疑向我们展示了这种模式。如果 K 是奇数,我们得到奇数个否定,如果 K 是偶数,我们得到偶数个否定。两者都可能发生在数组大小 N 允许的数量内。即。如果 K=5,我们可以得到 1 个或 3 个或 5 个否定或适合数组的内容; IE。如果 N=4,我们不能有 5 个否定,而只有 1 或 3 个。
因此,我们可以使用阶乘/二项式 (m!n) 来解决这个问题,它告诉我们在 n 个数字空间中 m 个元素的唯一组合的可能数量。 IE。 3!5 将返回 10,因为有 10 种方法可以组合 1、2、3、4、5 的 3 个元素:
1 2 3
1 2 4
1 2 5
1 3 4
1 3 5
1 4 5
2 3 4
2 3 5
2 4 5
3 4 5
4!5 将返回 5:
1 2 3 4
1 2 3 5
1 2 4 5
1 3 4 5
2 3 4 5
而 3!3 将返回 1:
1 2 3
这个问题的公式是(2个例子):
combinations = (1!6) + (3!6) + (5!6) + (7!6) // K=7, N=6 - note that K is odd
combinations = (0!6) + (2!6) + (4!6) + (6!6) // K=6, N=6 - note that K is even
注意:0!n 始终为 1n!n 始终为 1(>n)!n 为始终为 0(例如 12!7 将返回 0)
要解决此任务,请执行(同样,对于一个大集合,其中 K = 1...10 和 N = 1...14):
┌────┬────────────────────────────────────┬────────────────────────────────────┬────────────────────────────────────┬────────────────────────────────────┬────────────────────────────────────┬────────────────────────────────────┬────────────────────────────────────┬────────────────────────────────────┬────────────────────────────────────┬──────────────────────────────────────────┬──────────────────────────────────────────┬──────────────────────────────────────────┬──────────────────────────────────────────┬──────────────────────────────────────────┐
│ │N=1 │N=2 │N=3 │N=4 │N=5 │N=6 │N=7 │N=8 │N=9 │N=10 │N=11 │N=12 │N=13 │N=14 │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=1 │(1!1) │(1!2) │(1!3) │(1!4) │(1!5) │(1!6) │(1!7) │(1!8) │(1!9) │(1!10) │(1!11) │(1!12) │(1!13) │(1!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=2 │(0!1)+(2!1) │(0!2)+(2!2) │(0!3)+(2!3) │(0!4)+(2!4) │(0!5)+(2!5) │(0!6)+(2!6) │(0!7)+(2!7) │(0!8)+(2!8) │(0!9)+(2!9) │(0!10)+(2!10) │(0!11)+(2!11) │(0!12)+(2!12) │(0!13)+(2!13) │(0!14)+(2!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=3 │(1!1)+(3!1) │(1!2)+(3!2) │(1!3)+(3!3) │(1!4)+(3!4) │(1!5)+(3!5) │(1!6)+(3!6) │(1!7)+(3!7) │(1!8)+(3!8) │(1!9)+(3!9) │(1!10)+(3!10) │(1!11)+(3!11) │(1!12)+(3!12) │(1!13)+(3!13) │(1!14)+(3!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=4 │(0!1)+(2!1)+(4!1) │(0!2)+(2!2)+(4!2) │(0!3)+(2!3)+(4!3) │(0!4)+(2!4)+(4!4) │(0!5)+(2!5)+(4!5) │(0!6)+(2!6)+(4!6) │(0!7)+(2!7)+(4!7) │(0!8)+(2!8)+(4!8) │(0!9)+(2!9)+(4!9) │(0!10)+(2!10)+(4!10) │(0!11)+(2!11)+(4!11) │(0!12)+(2!12)+(4!12) │(0!13)+(2!13)+(4!13) │(0!14)+(2!14)+(4!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=5 │(1!1)+(3!1)+(5!1) │(1!2)+(3!2)+(5!2) │(1!3)+(3!3)+(5!3) │(1!4)+(3!4)+(5!4) │(1!5)+(3!5)+(5!5) │(1!6)+(3!6)+(5!6) │(1!7)+(3!7)+(5!7) │(1!8)+(3!8)+(5!8) │(1!9)+(3!9)+(5!9) │(1!10)+(3!10)+(5!10) │(1!11)+(3!11)+(5!11) │(1!12)+(3!12)+(5!12) │(1!13)+(3!13)+(5!13) │(1!14)+(3!14)+(5!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=6 │(0!1)+(2!1)+(4!1)+(6!1) │(0!2)+(2!2)+(4!2)+(6!2) │(0!3)+(2!3)+(4!3)+(6!3) │(0!4)+(2!4)+(4!4)+(6!4) │(0!5)+(2!5)+(4!5)+(6!5) │(0!6)+(2!6)+(4!6)+(6!6) │(0!7)+(2!7)+(4!7)+(6!7) │(0!8)+(2!8)+(4!8)+(6!8) │(0!9)+(2!9)+(4!9)+(6!9) │(0!10)+(2!10)+(4!10)+(6!10) │(0!11)+(2!11)+(4!11)+(6!11) │(0!12)+(2!12)+(4!12)+(6!12) │(0!13)+(2!13)+(4!13)+(6!13) │(0!14)+(2!14)+(4!14)+(6!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=7 │(1!1)+(3!1)+(5!1)+(7!1) │(1!2)+(3!2)+(5!2)+(7!2) │(1!3)+(3!3)+(5!3)+(7!3) │(1!4)+(3!4)+(5!4)+(7!4) │(1!5)+(3!5)+(5!5)+(7!5) │(1!6)+(3!6)+(5!6)+(7!6) │(1!7)+(3!7)+(5!7)+(7!7) │(1!8)+(3!8)+(5!8)+(7!8) │(1!9)+(3!9)+(5!9)+(7!9) │(1!10)+(3!10)+(5!10)+(7!10) │(1!11)+(3!11)+(5!11)+(7!11) │(1!12)+(3!12)+(5!12)+(7!12) │(1!13)+(3!13)+(5!13)+(7!13) │(1!14)+(3!14)+(5!14)+(7!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=8 │(0!1)+(2!1)+(4!1)+(6!1)+(8!1) │(0!2)+(2!2)+(4!2)+(6!2)+(8!2) │(0!3)+(2!3)+(4!3)+(6!3)+(8!3) │(0!4)+(2!4)+(4!4)+(6!4)+(8!4) │(0!5)+(2!5)+(4!5)+(6!5)+(8!5) │(0!6)+(2!6)+(4!6)+(6!6)+(8!6) │(0!7)+(2!7)+(4!7)+(6!7)+(8!7) │(0!8)+(2!8)+(4!8)+(6!8)+(8!8) │(0!9)+(2!9)+(4!9)+(6!9)+(8!9) │(0!10)+(2!10)+(4!10)+(6!10)+(8!10) │(0!11)+(2!11)+(4!11)+(6!11)+(8!11) │(0!12)+(2!12)+(4!12)+(6!12)+(8!12) │(0!13)+(2!13)+(4!13)+(6!13)+(8!13) │(0!14)+(2!14)+(4!14)+(6!14)+(8!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=9 │(1!1)+(3!1)+(5!1)+(7!1)+(9!1) │(1!2)+(3!2)+(5!2)+(7!2)+(9!2) │(1!3)+(3!3)+(5!3)+(7!3)+(9!3) │(1!4)+(3!4)+(5!4)+(7!4)+(9!4) │(1!5)+(3!5)+(5!5)+(7!5)+(9!5) │(1!6)+(3!6)+(5!6)+(7!6)+(9!6) │(1!7)+(3!7)+(5!7)+(7!7)+(9!7) │(1!8)+(3!8)+(5!8)+(7!8)+(9!8) │(1!9)+(3!9)+(5!9)+(7!9)+(9!9) │(1!10)+(3!10)+(5!10)+(7!10)+(9!10) │(1!11)+(3!11)+(5!11)+(7!11)+(9!11) │(1!12)+(3!12)+(5!12)+(7!12)+(9!12) │(1!13)+(3!13)+(5!13)+(7!13)+(9!13) │(1!14)+(3!14)+(5!14)+(7!14)+(9!14) │
├────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┤
│K=10│(0!1)+(2!1)+(4!1)+(6!1)+(8!1)+(10!1)│(0!2)+(2!2)+(4!2)+(6!2)+(8!2)+(10!2)│(0!3)+(2!3)+(4!3)+(6!3)+(8!3)+(10!3)│(0!4)+(2!4)+(4!4)+(6!4)+(8!4)+(10!4)│(0!5)+(2!5)+(4!5)+(6!5)+(8!5)+(10!5)│(0!6)+(2!6)+(4!6)+(6!6)+(8!6)+(10!6)│(0!7)+(2!7)+(4!7)+(6!7)+(8!7)+(10!7)│(0!8)+(2!8)+(4!8)+(6!8)+(8!8)+(10!8)│(0!9)+(2!9)+(4!9)+(6!9)+(8!9)+(10!9)│(0!10)+(2!10)+(4!10)+(6!10)+(8!10)+(10!10)│(0!11)+(2!11)+(4!11)+(6!11)+(8!11)+(10!11)│(0!12)+(2!12)+(4!12)+(6!12)+(8!12)+(10!12)│(0!13)+(2!13)+(4!13)+(6!13)+(8!13)+(10!13)│(0!14)+(2!14)+(4!14)+(6!14)+(8!14)+(10!14)│
└────┴────────────────────────────────────┴────────────────────────────────────┴────────────────────────────────────┴────────────────────────────────────┴────────────────────────────────────┴────────────────────────────────────┴────────────────────────────────────┴────────────────────────────────────┴────────────────────────────────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴──────────────────────────────────────────┘
结果与之前的暴力破解相同:
N=1 N=2 N=3 N=4 N=5 N=6 N=7 N=8 N=9 N=10 N=11 N=12 N=13 N=14
K=1 1 2 3 4 5 6 7 8 9 10 11 12 13 14
K=2 1 2 4 7 11 16 22 29 37 46 56 67 79 92
K=3 1 2 4 8 15 26 42 64 93 130 176 232 299 378
K=4 1 2 4 8 16 31 57 99 163 256 386 562 794 1093
K=5 1 2 4 8 16 32 63 120 219 382 638 1024 1586 2380
K=6 1 2 4 8 16 32 64 127 247 466 848 1486 2510 4096
K=7 1 2 4 8 16 32 64 128 255 502 968 1816 3302 5812
K=8 1 2 4 8 16 32 64 128 256 511 1013 1981 3797 7099
K=9 1 2 4 8 16 32 64 128 256 512 1023 2036 4017 7814
K=10 1 2 4 8 16 32 64 128 256 512 1024 2047 4083 8100
这些是修改 K 次后唯一数组的总数。希望这可以澄清:-)。
【讨论】:
【参考方案2】:我没有太多声誉可以发表评论,所以我在这里问。
@Stormwind 不会出现这种情况,因为数组也可能包含 0。
【讨论】:
以上是关于查找数组的总数的主要内容,如果未能解决你的问题,请参考以下文章