問題の説明:
を含む N 個の整数のリストのセットは、1 つの整数から開始i1,i2,....,iN
し、最後に追加された整数以上の整数を繰り返し追加すること0<= i1<=i2<=i3<=....<=iN <=M
によって作成されます。0<=i1<=M
リストの最終セットを取得するために最後の整数を追加すると、インデックスは から始まり0 to BinomialC[M+N,N)]-1
ます。
For example, for M=3, i1=0,1,2,3
リストは
{0},{1},...,{3}.
別の整数を追加するi2>=i1
と、
{0,0},{0,1},{0,2},{0,3},
{1,1},{1,2},{1,3},
{2,2},{2,3}
{3,3}
インデックス付き
0,1,2,3,
4,5,6,
7,8,
9.
このインデックスは、i1、i2、...、iN および M で表すことができます。条件 >= が存在しない場合は、単純に になりますi1*(M+1)^(N-1)+i2*(M+1)^(N-2)+...+iN*(M+1)^(N-N)
。ただし、上記の場合、制限により指数にマイナスのシフトがあります。たとえば、N=2 の場合、シフトは -i1(i1+1)/2 で、インデックスはi = i1*(M+1)^1 + i2*(M+1)^0 -i1(i1+1)/2.
質問: 特に数学のバックグラウンドを持つ人で、一般的な N 要素の場合のインデックスの書き方を知っている人はいますか? それとも最終的な表現ですか?どんな助けでも感謝します!ありがとう!