拆分位!
我们定义作为鲜明的权力清单2那笔X。例如,V (35 )= [ 32 ,2 ,1 ]。V(x)V(x)V(x)222xxxV(35)=[32,2,1]V(35)=[32,2,1]V(35)=[32,2,1] 按照惯例,此处的权力从最高到最低排序。但这不会影响挑战的逻辑,也不会影响预期的解决方案。 任务 给定一个半素数 ,将V (N )中的每个项替换为另一个与该项加和的2的幂的列表,这样所有结果子列表的并集就是矩阵M的精确覆盖,定义为:NNNV(N)V(N)V(N)222MMM Mi,j=V(P)i×V(Q)jMi,j=V(P)i×V(Q)jM_{i,j}=V(P)_i \times V(Q)_j 其中和Q是N的素数。PPPQQQNNN 通过一些示例,这更容易理解。 例子1 对于,我们有:N=21N=21N=21 V(N)=[16,4,1]V(N)=[16,4,1]V(N)=[16,4,1] 和 V (P )= [ 4 ,2 ,1 ]P=7P=7P=7V(P)=[4,2,1]V(P)=[4,2,1]V(P)=[4,2,1] 和 V (Q )= [ 2 ,1 ]Q=3Q=3Q=3V(Q)=[2,1]V(Q)=[2,1]V(Q)=[2,1] M=(844221)M=(842421)M=\pmatrix{8&4&2\\4&2&1} 要将变成M的精确覆盖,我们可以将16分成8 + 4 + 4和4分成2 + 2,而1保持不变。因此,可能的输出是:V(N)V(N)V(N)MMM1616168+4+48+4+48+4+44442+22+22+2111 [[8,4,4],[2,2],[1]][[8,4,4],[2,2],[1]][ [ 8, …