- ベストアンサー
ナンバーズ4のストレートをボックスにするロジック?
例えば、ナンバーズ4のストレートの4桁の数列を、ボックスにするには、 どのようなロジックが良いでしょうか?考えていはいるのですが、 中々、スマートなというか、良いロジックが思い浮かばずです。 知っている方よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ん~, 順列を使うなら普通は「重複して困る」んじゃないかなぁ. どういうロジックを使ってるのか知らんけど, 1234 に対して 4! = 24 通り出せるなら, 同じことを 1112 に対してやると 1112, 1121, 1211, 2111 が 6回ずつ出てくるはず (というかそのようにできる). で手を抜くなら「既出の数値」を管理して重複したら飛ばすって書くんだけどね.
その他の回答 (2)
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.2
いくつか考えられるけど, ちょ~ベタに考えると 「4桁の数値のすべての可能性を考えて, 適切なものだけを取り出す」 方法で (やたらと無駄は多いけど) できることは間違いない. ふつうは順列とかを使って無駄を省くんだけどね.
質問者
お礼
回答ありがとうございます。 順列や組み合わせを使って、 1234や4321などは作れるようになりましたが、 重複する1122や1112などがつくれない感じです。
noname#147388
回答No.1
そういう場合、ソースをアップするなりすれば、つっついてくれますよ。
質問者
お礼
はい! がんばっています。けど、むずい。。。
お礼
なんとか、できました。重複はTreeMapでなんとか。 っていうか、次回からロジックを質問内に入れて質問します~。