唯一的一组数字,其中任何组合的总和将指示在该组合中选择了哪些数字
Unique set of numbers, where the sum of any combination will indicate which numbers were chosen in that combination
我以前在一种形式中看到过,当您从列表中 select 多个选项时,每个选项都有一个数值,selected 选项的总和代表哪个组合选项 selected。例如:
100= a (black), 43= b (blue), 2= c (green), 4= d (red)
总和表示选择了哪些选项:
102 = a,c (black, green)
106 = a,c,d
43 = b
149 = a,b,c,d (black, blue, green, red)
有谁知道这个的名字所以我可以查一下吗?我没能找到合适的术语(我假设它是一种组合数学?)
也不知道它叫什么,但是如果你不允许重复的项目,你可以用两个 [1, 2, 4, 8, ...] 的幂次序来实现。得到组成和的单个项相当于得到数字的二进制展开
a = 1 = b001
b = 2 = b010
c = 4 = b100
1 -> b001 -> a
2 -> b010 -> b
3 -> b011 -> ab
4 -> b100 -> c
5 -> b101 -> ac
6 -> b110 -> bc
7 -> b111 -> abc
我以前在一种形式中看到过,当您从列表中 select 多个选项时,每个选项都有一个数值,selected 选项的总和代表哪个组合选项 selected。例如:
100= a (black), 43= b (blue), 2= c (green), 4= d (red)
总和表示选择了哪些选项:
102 = a,c (black, green)
106 = a,c,d
43 = b
149 = a,b,c,d (black, blue, green, red)
有谁知道这个的名字所以我可以查一下吗?我没能找到合适的术语(我假设它是一种组合数学?)
也不知道它叫什么,但是如果你不允许重复的项目,你可以用两个 [1, 2, 4, 8, ...] 的幂次序来实现。得到组成和的单个项相当于得到数字的二进制展开
a = 1 = b001
b = 2 = b010
c = 4 = b100
1 -> b001 -> a
2 -> b010 -> b
3 -> b011 -> ab
4 -> b100 -> c
5 -> b101 -> ac
6 -> b110 -> bc
7 -> b111 -> abc