私は問題に苦しんでいます - 私の悪い英語を許してください. 私は現在、リストを操作して変換する必要がある Python でいくつかのスクリプトを書いています。二重番号付けを、1 つのインデックスのみが使用される別の番号付けに変換したいと考えています。
n
が私の二重番号付けの最初のインデックスであり、2 番目のインデックスである場合、通過を許可するm
式は何ですか (ここでは一般的なルールが必要です):L(n, m) = idx
n_max = 3
[n, m] => [[0, 0], [1, 0], [2, 0], [3, 0], [1, 1], [2, 1], [3, 1], [2, 2], [3, 2], [3, 3]]
などへ
idx => [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
? 明らかに n_max に依存していますが、しばらく探していて、信頼できる式やスクリプトが見つかりません。
たとえば、[n, m]
に次の構造があるとします。
[[0, 0], [1, 0], [1, 1], [2, 0], [2, 1], [2, 2], [3, 0], [3, 1], [3, 2], [3, 3]]
検索式は次のようになります。
idx = L(n, m) = n * (n + 1) / 2 + m
少しのヒントやリンクであっても、どんな助けでも大歓迎です:)ありがとう!私はすでにウェブとこのウェブサイトで検索しましたが、答えは見つかりませんでした。