在一组C+1
整数值{0,1,...,C}
。如何索引{00,01,...,0C, 11,12,...,1C,22,...2C,...,CC}
对?据我所知,ab
对a <= b
的总数是(C+1)(C+2)/2
对。当ab
,我可以想出一种将i
对映射到它们的索引a <= c/2
的方法,但映射对于另一半对不起作用。
是否有一个简单的表达式可以将ab
对映射到i
索引?这个问题与Indexing the (unordered) pairs of a set非常相似,但不允许重复。
经过一些数学计算,我得到了一个表达。
表达式是i = a(C+1) - a(a-1)/2 + b - a
。一旦我有时间输入乳胶,我就会把数学发布到后面,但是想法是根据a
和C
(前两个术语)计算已经计算了多少对已经计算了三角和的差异,然后添加缺少什么基于b
和a
。