• 締切済み

重複ありの全組み合わせ生成

出来れば、スマホで出来るならありがたいと思っていますが、難しいようなら、WindowsパソコンにExcelも入っているのでそちらでもと思います。 https://youtu.be/-S61o_F1ATE こちらに出てくる問題の組み合わせを自動的に文字出力できたらと思っています。 アップ! ダウン! レフト! ライト! チュー! ヘイ! わん! ニャー! 田中! 鈴木! という種類で、動画の通り、リスト中一つをピックアップするものから、恐らく数える限りで最大15個選定しているものもあるかと思います。 また、重複も含みます。例えば、 アップ! ダウン! アップ! ダウン! アップ! アップ! チュー! とか、 田中! 田中! 田中! 田中! 田中! 田中! 鈴木! とか、上手く説明できませんが、そんなのもあるかと思います。 実際に作業する時には、前述の文字を直接使わず、 アップ! ダウン! レフト! ライト! チュー! ヘイ! わん! ニャー! 田中! 鈴木! というリストのデータベースから、ランダムで抽出し出力する、という命令をするものなのですが、その命令を自動的に組み合わせて表示させられるようなものがあればと思ってます。 すみません、普段IT系の仕事でも無ければ、その関連の知識やスキルがあるわけでもないので、おかしなところがあるのや説明下手なのはご容赦頂けましたら幸いです。 仮に上記のデータベースをDATA1として、 DATA1-A,BR,DATA1-B,BR,DATA1-B と入力し、結果が レフト! 田中! 田中! とか わん! レフト! レフト! とかと表示されるとか、 DATA1-B,BR,DATA1-A,BR,DATA1-B と入力し、結果が、 わん! 田中! わん! とか 鈴木! レフト! 鈴木! とかと表示されるなどの感じになればとおもいますが、その DATA1-A,BR,DATA1-B,BR,DATA1-B DATA1-B,BR,DATA1-A,BR,DATA1-B という組み合わせのリストを、上記のように重複も込で生成できたらと思ってます。 1つを呼び出すもや、2つを呼び出すものは、特にツールやアプリをを使わなくても手打ちの方がむしろ早いかとは思いますが、それ以降を A,A,A A,B,A A,B,B B,A,B B,B,A A,B,C C,B,A C,A,A … A,B,A,B,A,B,A,C,D,C,O,J,A といった、1個を呼び出すだけから、2個を重複ありで組み合わせたもの、3個を重複ありで組み合わせたもの ・・・ 15個を組み合わせたもの、でリストを生成してくれたらと思ってます。 ブラウザ上でそのようなツールを提供してくださっているサイト、Google Play上にあるアプリで提供してくださっているもの、またはWindowsパソコンのExcelなどでのやり方があるようでしたら、教えていただけたら幸いです。 どうぞよろしくお願い致します。

みんなの回答

  • masnoske
  • ベストアンサー率35% (67/190)
回答No.2

組合せを考える必要は無いように思います. (1) 言葉を何個出力するか 1~15の乱数nを出力する. (2) n個の乱数を発生させて,対応するデータを取り出す. ワークシート関数の RANDBETWEENを使えば良いです.

d-daisuke
質問者

補足

大変遅くなりましたが、ありがとうございます。 早速試させていただいたのですが、私の理解力の無さややり方が間違っているのか上手く行きませんでした・・。 先の方への補足にも再度極力伝わるように書かせていただいたのですが、該当サイトの仕様に合わせた言語?関数?リストが必要なのですが、頂いたものでは上手く行きませんでした・・。 お忙しい中回答を下さったのに、役立たせることが出来ず申し訳ございませんでした。

全文を見る
すると、全ての回答が全文表示されます。
  • hiro_1116
  • ベストアンサー率30% (2379/7707)
回答No.1

御質問の意図が充分に理解できていないようにも思えるので、違っていたら申し訳ないのですが、「リストのデータベースから、ランダムで抽出し出力する」という目的なら、「重複ありの全組み合わせ生成」をしなくても、抽出したい個数の乱数を生成して、それに従ってリストから単語を抽出して並べるだけでも良いような気がしました。 いったん「重複ありの全組み合わせ生成」してリストとして保持する必要があるのでしょうか?

d-daisuke
質問者

補足

遅くなりましたが、ご回答ありがとうございます。 私の方が上手く伝えられていないかと思うので申し訳ございません。 目的のサイトにて、色々と以前からプログラミングというか、指定の機能を用いて色々試してはいるのですが、今回動画を掲載したスペースチャンネル5の問題のようなものを自動生成するには、面倒でも、質問に極力書いたような組み合わせの命令を与えてあげないと、結果がスペースチャンネル5の問題風に出力してくれないので、今も差し当たり、手動で組み合わせを日々空き時間に作っているのですが、そもそもこういう作業が得意でないもので、間違ったりしていて、恐らく10分の1も進んでいない状況です。 そのため、自動化出来るものがもしあればと質問させていただいた次第です。例えば、個人的にEXCELやらプログラミングやらで作る場合は、ご指摘のように不要な事をしている感じなのかもしれないですが、あくまで、目的のサイトの仕様に沿った事をしたい感じなものでして。たとえば、プログラミング的な事をしないで文字列だけでリストを作ってしまうと、リストの列の制限を超えてしまいまして。結果出力の文字数は超えないのですが。なので、プログラミングというか、命令でそのようにしています。 いくつか、Webツールを検索してみたのですが、ABC、ACB、CBAとかといった感じの重複しない全出力をするものがあったり、他にも重複しない全出力、というもので、何故かそもそも組み合わせがされないもの、とかは試しました。 補足でもうまく言えず申し訳ございません。 ですので、文字列としては A B C D E F G H I J K L M N O AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO BB BA BC ・ ・ AAA AAB AAC AAD AAE ・ ・ OAA OAB OAC ・ ・ AAAAAAAAAAAAAAA AAAAAAAAAAAAAAB AAAAAAAAAAAAAAC ・ ・ OAJAOAAAAAAAABC ・ ・ といったような出力になるような命令を与えるリストの全組み合わせが必要になってまして。 命令を与えてあげることによって、まず上記のひとつのもの A B C D E F G H I J K L M N O を a という呼び出し関数1つで済むので、それでリストの行を14行省略できまして。これだけなら大したことがないのですが、当然ながら組み合わせが増えるほど行が増えるので、前述の通り、某サイトの仕様で行が足りなくなってしまいます。 あと、今回、同じ文字列が重複して含まれることもあるので、それが厄介となっていて、そういった事も条件に含んでしまっているので、矛盾というか、出力された結果は重複していないのに、組み合わせに重複が含まれるのでそれは除外、となってしまうようです。 本当に上手く説明できなくてすみません。当初お伝えの通り、私自身、IT関連はかじっているものの、かなり浅いところで挫折してるのもあり、専門用語なんか分からないに等しいのに、使ってしまっているところがあるので申し訳ございません。 ご説明させていただく必要がある部分に関しては、またご説明させて頂けたらと思います。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VBAでの重複データ統一についてです。

     いつもお世話になっております。VBA初心者です。 過去の質問で、2つのセルの重複データを一つのデータにする処理があったのですが、3つのセルの重複データを1つのデータにするやり方に苦戦しております。 (A列) (B列) (C列)  A社  鈴木   男性  B社  田中   女性  A社  鈴木   男性  B社  佐藤   女性  B社  田中   女性  A社  鈴木   男性      ↓↓ (A列) (B列) (C列)  A社  鈴木   男性  B社  田中   女性  B社  佐藤   女性  となるようにしたいのです。 サンプルソース等がありましたら、 よろしくお願いいたします。

  • エクセル 重複セルについて

    住所リストを制作しておりまして、 全リストから、一定の人を削除したリストを作りたいのですが、 方法が分かりません。 重複しているセルをソートできればと思うのですが、 どなたかお教えいただけますでしょうか?   A列  B列 C列  D列  1 住所 田中     太田 2 住所 斉藤     田中 3 住所 太田     木村 4 住所 木村     渡邉 5 住所 小林  B列にある氏名の中にD列の氏名が重複していたら、 下記のようなことができますでしょうか? ●C列に”重複”と出る   A列  B列 C列    1 住所 田中 重複 または ●B列と重複するD列のセルが隣に並び変えられる   A列  B列 C列  D列  1 住所 田中     田中 なお、A列とB列は一緒にしたいので、 B列だけが並び変えられることは避けたいです。 緊急SOSです! よろしくお願いいたします。

  • ACCESSで重複するデータをまとめたいのですが

    ACCESS超初心者です。 ヘルプを見たのですが解決できなかったので、ご質問させてください。    フィールド        フィールド1 フィールド2 田中  A        田中 A       B 田中  B    →   鈴木 A 鈴木  A        佐藤 C 佐藤   C ACCESSで上記のようにデータをまとめたいのですが どのようなテーブル、クエリを組めばよいでしょうか? ご教示願います

  • 重複組合わせ

    重複組合わせ ある本に次のような説明がありました。 一つの箱のなかに1からnまでの番号のついた球が入っているとする。この中から球を順にr個取り出すという場合。 取り出した番号は無視してそれらの番号の組を作る。 この場合、n+r-1個からr個取り出す組合せに直す事ができる。 まず、取り出したr個のものa1,a2,…,arに対して、順序を区別しないのであるから、考えやすくするために、n個のものに対応する番号をつけ、取り出したa1,a2,…,arの番号は、a1≦a2≦…≦arであると仮定しても問題無い。そうすると、ここに、順に0,1,2、…、r-1を加え、 a1+0=b1 a2+1=b2 … ar+(r-1)=br を考えれば、b1<b2<…<brであって、しかも、b1,b2,…,brは1,2,3、…、n+r-1のうちのいずれかである。このb1,b2,…,brの取り方は、取り出した順番に関係なく番号が大きい順に並べ直したものだから、n+r-1個からr個取り出す組合せになる。 つまり、nこからr個重複して取り出す組み合わせを、n+r-1こからr個取り出す組合せになおすことができた。 ・・・という説明があるのですが、イマイチよくわかりません゜(゜´Д`゜)゜ どなたかもう少し噛み砕いてわかりやすく説明してくださいませんか?? 回答よろしくお願いします。

  • 重複組み合わせ?

    次の問題で、途中から解き方がわかりません。どなたか、おしえてください。 問:1~999までの整数のうち、各位の数の和が7の倍数となる整数はいくつあるか。 自分が考えた解き方です。 ------------------------- 1~999までの整数nは n=100a+10b+c (a,b,c=0,1,2…9 ;n≠0) とおける。 a+b+c=7,14,21 になればよいから、 ⅰ)a+b+c=7 のとき (ここで、重複組み合わせだと思い) 3H7=(3+7-1)C7=9C2=36 ⅱ)a+b+c=14のとき ⅲ)a+b+c=21のとき -------------------------- ⅰ)と同じやり方では ⅱ)ⅲ)のときはa,b,cが9より大きい場合の時も数えてしまうと思います。 ここから先はどのように解けばいいのでしょうか、また他の解法があれば教えてください。 お願いします。

  • ExcelでA列内で重複するレコードを削除

    A、B、C列にデータが入力されており、A列の店名が重複する場合、最初の1つを残して、他の重複するレコード(行全体)を削除する方法を教えてください。 A列で重複していても、B、C列で内容が違う可能性があります。 例えば、 A列:田中商店 B列:本町1-1-1 C列:0120-000-000 A列:田中商店 B列:本町1-1-11 C列:0120-000-001 この様にA列で田中商店が重複する場合、1番目の田中商店の行だけを残し、2番目以降は行全体を削除して上方向に詰めたいです。

  • 【Excel】マクロを使用した重複チェックについて

    教えて下さい! 以下のような表があります。 月|日|A担当|コード|サブ|コード|B担当|コード 5  1    田中   1   佐藤   5   鈴木   3 5  2    佐藤   5   鈴木   3   田中   1 5  3    鈴木   3   田中   1   佐藤   5 5  4    佐藤   5   鈴木   3   田中   1 行ごとにかぶっている人がいると”■行の○○さんが重複しています”といったようなメッセージが表示されるようにしたいのです。 行は30行ほどあります。 一つフォームのボタンを作り、それをクリックすることにより重複チェックのマクロが流れるようにするにはどうしたらいいのでしょうか?

  • お助け下さい、プログラミングの分かる方!!

    ヘルプをお願い致します。 あるデータ一覧の中に重複したデータと重複していないデータがあります。 リストアップしたいのは、重複していないデータと重複したものはその最新の 日付(現在から考えて)のものだけデータをリストアップしたいのです。 下記をネットから調べて見つけたのですが、肝心の最新の日付をみて 重複データがリストアップできずに大変困っています。 お手数をおかけ致しますが、助けて頂きますようお願い致します。 重複チェックは、顧客名と製品名でしたいと考えています。 リストアップは別のシートにリストアップできればと考えています。 重複していたデータには色がついていると助かります。 マクロ初心者なので、簡単な説明文を頂けると大変助かります。 ******************************* データは下記です。  A     B      C     D    E    F      G 日付  顧客名  製品名  担当者  価格  個数  合計金額 1/1 田中さん  A    担当者A  100円 100 10000 1/2   田中さん  B    担当者B  100円 100 10000 1/3   鈴木さん  B    担当者C  100円 100 10000 1000行以上あります。 ******************************* Sub ko() Dim x As Long 'xは長整数と宣言 With ActiveSheet 'アクティブなシートで .Rows("1").Insert Shift:=xlDown 'ダミー行挿入 .Range("A1") = "Code" 'ダミー項目1 .Range("B1") = "Name" 'ダミー項目2 x = .Cells(.Rows.Count, 1).End(xlUp).Row '最終行取得 .Range("A1:B" & x).Select '範囲選択 Selection.AdvancedFilter Action:=xlFilterInPlace, Unique:=True '重複を表示しない Selection.Copy .Range("C1") 'コピーしてC1以降に貼り付け .ShowAllData 'すべてを表示 .Rows("1").Delete Shift:=xlUp 'ダミー行削除 End With End Sub

  • Excel VBAを使ってHTML生成をしたい

    エクセルにデータを入力し、下記のようなhtmlファイルに各々のセルに対応した数値が代入されたものを生成したいと考えています。 <a href="【A1】.html">【A2】</a><br/> <a href="【B1】.html">【B2】</a><br/> <a href="【C1】.html">【C2】</a><br/> <a href="【D1】.html">【D2】</a><br/> <a href="【E1】.html">【E2】</a><br/> VBAを使ってこのようなことは可能でしょうか? また、そのほかどのような方法が考えられますでしょうか? なにとぞよろしくお願いいたします。

    • ベストアンサー
    • HTML
  • 重複組み合わせ

    白球5個、赤球3個、黒球2個がある。 (1)10個の球を6人に分ける方法は何通りか?(1個も貰わない人があってもよい) という問題で自分はまず6人をそれぞれA,B、C、D、E、Fとい置いてA+B+C+D+E+F=10となればよいから、 重複組み合わせの公式を使って 6+10-1C10=7007通りとなったのですが、答えだと296352通りとなっていた全然違ったのですが、どこら辺がいけないのでしょうか?