• ベストアンサー

nCr 組合せ数字からの順位の逆算

1~100までの3つの数字の組合せでは、 1番目  1、2、3 2番目  1、2、4   ・   ・   ・ 161700番目 98,99,100 となりますが、任意の3つの組合せ数字が何番目なのかを求める方法はあるのでしょうか? このケースでは、2、3、4の組合せは4951番目になる。というような事です。 これは単純に 100C2 + 1 で計算しました。 このようにnとrの数値を変えて加算していけばできそうな気もするのですが繰り返し計算が多すぎて混乱しています。 もっとシンプルな方法はないのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

何かうまいやり方がありそうな気もしますが… 素直にやれば 一番小さい数がiであるのは他の2数を考えて (100-i)C2通り 一番小さい数がiで二番目がjであるのは (100-j)C1通り (k,l,m)(k<l<m)の前に来るのは (一番目がk未満のもの) +(一番目がkで二番目がl未満のもの) +(一番目がkで二番目がlで三番目がm未満のもの) =Σ[i=1,k-1](100-i)C2+Σ[j=k+1,l-1](100-j)C1+(m-l-1) (※k=1のときは最初のΣを0、l=k+1のときは二項目のΣを0とする) 展開整理することは可能ですが簡単にはならないと思います (最初の例は99C2+1かと)

OKWavetamotsu
質問者

お礼

お礼が遅くなり申し訳ありません。 そうですね、99C2 + 1 でした・・・イメージでは分かっていたのですが相当混乱していたようです。 素直に考える・・・その通りですね。プログラムに組み込むとき少しでもシンプルにと考えすぎていたようです。 10万~600万件ほどの全データを質問内容の通りに(実際は7個の数字)瞬時に処理する事が必要なソフトなので繰り返し計算を避けようとして雑念があったようです。 頂いた回答は私が描いていたイメージそのものです。 数式として形にして頂いたおかげでソフトに組み込む事ができました。 処理速度はプログラムの工夫で何とかなりそうです。 ありがとうございました。

その他の回答 (1)

  • alice_44
  • ベストアンサー率44% (2109/4759)
回答No.1

辞書式に並べると、先頭が 2 の三つ組は、 先頭が 1 の三つ組が並んだ後に来る。 先頭が 1 の三つ組の総数は、99C2。 先頭が 2 の三つ組の中で、二番目が 3 のものは、 二番目が 1 のものの後に来る。 先頭が 2 で二番目が 1 のものの総数は、98C1。 先頭が 2 で二番目が 3 のものの中で、 234 は 231 の次で 2 個目に並ぶ。 よって、234 は全体の 99×98/2 + 98 + 2 個目。 このように、三つ組の中で 各数の左に、それより小さい数が何個あるか を考えて計算する必要がある。

OKWavetamotsu
質問者

お礼

お礼が遅くなり申し訳ありません。 私が 100C2 + 1 などと書いた為、誤解させてしまったようです。すみません。 >各数の左に、それより小さい数が何個あるか >を考えて計算する必要がある。 順列のケースも必要な為、このアドバイスは非常に助かりました。 alice_44さんとdame_dame_さんの回答だけですべてが解決しました。 ありがとうございました。

関連するQ&A

  • 数字の組み合わせについて

    1から6の数字から3つを選び、順番に並べるというやり方で通常だと6*5*4で120通りに なるのはわかるのですが、 例えば2番目の数字を5と6に固定した場合や、 2番目と3番目の数字を4以外にした場合の組み合わせの計算方法がわかりません。 順列の式n(n-1)(n-2)この式でやるとうまくいきません お詳しい方教えてください。できればかなりわかりやすくお願いします><

  • 数字の組み合わせを教えて!

    7つの数字から4つの数字の組み合わせがいくつ出来ますか?(1,2,3,4)と(4,3,2,1)は使われている数字が同じなので1つと数えます。実際に書き出して、同じ組み合わせを探して消していくと凄い時間が掛かるので計算方法を知っている方教えて下さい! ◎7つの数字から4つの数字の組み合わせがいくつ出来ますか? ◎8つの数字から4つの数字の組み合わせがいくつ出来ますか? ◎9つの数字から4つの数字の組み合わせがいくつ出来ますか? ◎10この数字から4つの数字の組み合わせがいくつ出来ますか?

  • 決められた数字の組み合わせが逆算出来るソフト

    以前にも同じような内容にて質問をさせて頂きましたが、非常に分り難いものなので、改めてご質問させて頂きます。 ある商品において10種類の物が存在するとします。その10種類の商品は0~9という番号にて識別します。 その10種類の商品をセット販売すると仮定します。 S,M,Lの3種類のセットを作成する上で、組み合わせる商品が決まっています。 商品名を0~9という数字で割り当てます。 各商品の在庫数は50個ずつ。なので、10*50=500個の商品があります。 その中で組み合わせ方法として各3パターンの以下のような9パターンの組み合わせより作成をします。 Sセット 【25457】、【36568】、【37679】 Mセット 【14347】、【25458】、【26568】 Lセット  【03236】、【14347】、【04347】 この組み合わせの中で4番や5番などのよく使う商品があります。 なので、500個の商品を100セットにして使い切ることは不可能かと思います。 出来る限り、Sセット、Mセット、Lセットの数を同じくらいに作成したいのですが、どのような組み合わせを選択することにより500個の商品を無駄なく使うことが出来るでしょうか? そんな、組み合わせを1セットでも多く自動的に識別する事の出来るソフトやサイトなどを探しています。

  • 組合せ 

    1から i番目まで、数字がランダムに並んでいます。(マイナス数値からプラス数値まで)。 これらの数値の組合せで、組合せの合計値が、ある目標値になる組合せのすべてを発見して、その組合せを1からiの番号で表示したいのです。 目標値は一個だけ定めます。 どのような論理を組めば可能でしょうか。(この論理をエクセルソフトに組み込み計算します)。

  • 10個の数字を5個の組み合わせにして

    ミニロトなのですが、10個の数字を固定して、全通り買うには何通りありますか? (計算方法もよろしければお願いします) ロト6もこれらのように、複数数字の中から、全組み合わせを買いたいのですが、計算方法と、答え教えて下さい。 公式と意味が分かれば全てわかるのですが、歳老いて勉強不足で計算方法忘れてしまいました。

  • 数字の組み合わせについて

    0~9の数字を4個、AからZの数字を2個並べたとします。前者が前で後者が後ろです。この場合の組み合わせは何通りあるのでしょうか?計算方法も示してくださると幸いです 組み合わせ例 1147AF 9987ZY 宜しくお願いします。

  • 数字の組み合わせの問題。求め方を忘れてしまいました。。。

    こんばんは。よろしくお願いします。 数学のことをすっかり忘れてしまった者です(汗 確かこんな場合の計算方法あった。。。よな~??と思いながら、教科書を引っ張り出すわけにもいかず(引っ張り出す物が既に無い)、悩んでいます。 どなたか計算方法を教えてください。よろしくお願いします。 1、2、4、8、16、32 の6つの数字があります。 「16」が含まれる場合の数字の組み合わせの値はそれぞれいくつか? 単純にパターンだけ考えると 6×5×4×3×2×1で、720通りだったかな。。? と思うのですが 16が含まれるパターン。。。 16 16+1 16+1+2 16+1+2+4 16+1+2+4+8 16+1+2+4+32 16+1+4 16+1+4+8+32 16+1+4+32 16+4+32 。。。。なんか、全パターン書いていると頭がマズイ事になりそうなので。。。 何か計算方法ってありませんでしたっけ??(汗

  • 組合せの全体を算出できる数式は存在しますか?(再)

    ★★ 以下の内容をカテゴリ「数学・算数」へ1月19日に投稿しましたが,未だに回答が皆無で,"OKWAVE サポート担当" 様のご指導により「科学」へ再投稿してみました.★★ (再投稿) 最近(2018年12月12日)以下のような論文が,科学技術振興機構の運営する或る団体のサイトに提示されました. それは,数学の組合せ論に関する論文で「繰り返しを許さない組合せ」について,組合せの全体を算出できる数式(漸化式)に関する研究報告です. ● 論文タイトル:「繰り返しを許さない組合せの各組を全て算出できる数式」 組合せ論における「繰り返しを許さない組合せ」に関して,候補の数を n とし,選択の数を r とすると,組合せの総数 C(n,r) は,C(n,r) = n!/r!(n-r)! で与えられます. n と r,(n≧r)を任意に与えて,総個数が C(n,r) 個あるこの組合せの全てを,下記に示す数式(漸化式)で算出できます. この論文では,下に示す"組合せ網羅漸化式"(仮称)を用いた計算結果が,数多く示されています. 具体的には,例えば,組合せの要素を,1,2,3,4,5 で表し,この5個の要素から,4個を取り出した組み合せは, 〈1,2,3,4〉〈1,2,3,5〉〈1,2,4,5〉〈1,3,4,5〉〈2,3,4,5〉の5種類です. この5種類ような組合せも数式を用いて算出する方法が記述されています. この様な例のほか,全ての組み合せについて,ひとつの組合せ網羅漸化式を用いて組合せの全体が算出できます. 下記の数式以外で,これと同等の考え方・目的・主旨をもって創られている数式が存在すれば,それを教えて下さい. コンピューターを用いる数値計算で組合せを構成する方法は除きます.閉じた代数計算式の存在を問います.

  • 数字の組み合わせ方法について教えてください

    趣味のロト6で候補の数字を選択したものを組み合わせるのに苦労しています。 そこで、12個の数字から6個の数字の組み合わせを早く作れる方法(計算式でも可)をアドバイスください。 お願いします。

  • エクセルでnCr (組み合わせ)の作成方法

    どなたかご存じでしたら回答願います。 ミニロトとロト6をエクセルを使用して予想に利用しております。 その中で知りたいのは、下記の場合のエクセルVBAのソースです。 ●知りたいこと。 (1)ミニロトの場合は、31個から5個全てが一致すると一等ですが、  「25個から5個選択した場合の組み合わせ(25C5)」作成方法 (2)ロト6の場合は、43個から6個全てが一致すると一等ですが、  「24個から6個選択した場合の組み合わせ(24C6)」作成方法。 ●入力 (1)ミニロトの場合は、下記のように5×5マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 10 4 11 13 15 8 9 17 21 28 14 16 18 20 25 19 22 23 24 27 (2)ロト6の場合は、下記のように6×4マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 19 10 4 11 13 5 22 8 9 17 21 28 23 14 16 18 20 25 24 ●出力   VBAを実行すると、新シートにそれぞれ、25C5又は、24C6の全組み合わせが出力される。 【注意事項】    ・使用しているエクセルは2010です。 以上、ご回答よろしくお願いします。