
No.5
- 回答日時:
# ANo4さんへ
おぉなるほど、集合演算でも「-」を使うと今回のケースが綺麗に解決できるんですね・・・思いつきませんでした。
合致判定を Array#include? に依らないのであれば、これがスマートだと思います。
Array#include? は「==」に依存しますが、Array#-は「eql?」に依存する為、動きが異なります。
組み込みクラスでわかりやすいのはFloatが混じった時でしょうか。
http://codepad.org/fqyFSGRK
この回答へのお礼
お礼日時:2011/09/30 20:30
sholmes様
補足説明ありがとうございます。
小数点がある場合は、注意が必要なのですね。
大変参考になりました。
お忙しい中、ありがとうございました。
No.3
- 回答日時:
重複をどう扱いたいかわからんけど、何も考えない策としては
sub = [1, 1, 3]
sup = [4, 3, 1, 2, 1]
sup.permutation(sub.size).include?(sub)
とか。
No.2
- 回答日時:
そのまま実現している組み込みメソッドは、ちょっと思い当たりませんでした。
自分なら多分、 Enumerable#all? を使ってこんな感じの対処をするかなとは思います。
https://ideone.com/o1plX
<おまけ>
ANo.1さんへ
集合演算とempty?やany?だけだと、こんな感じの時に困りませんか?
# OK
p [3, 4] & [1, 2, 3, 4, 5]
p [3, 4] & [1, 2, 5]
# NG
p [3, 4] & [1, 2, 3, 5]
最後に要素数のチェックを入れた方が良いかもしれません。
この回答へのお礼
お礼日時:2011/09/30 20:22
sholmes様
回答ありがとうございます。
見た目的にシンプルになりますが
回答NO.4の配列の引き算を利用した方が
分かりやすい気がしましたので
そちらを使わせて頂こうと思います。
しかしながら、この方法も
準備さえしておけば、便利使えると思いますので
何かに応用させて頂こうと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB6で配列を引数にするときの2...
-
GetNextWindowがDLLファイルUse...
-
他のフォームから別のフォーム...
-
VBAで入力数値について
-
アクセスできない保護レベルエ...
-
VBA public変数はどのようなこ...
-
【HTML、VBScript】HTAアプリケ...
-
Excel VBA: private sub 内の...
-
VB.NETでのイベントの途中終了
-
SavePictureで保存できない
-
【VB6.0】 あるフォームから他...
-
[VB6] SQLの作成について
-
テキストボックスかラベル上の...
-
EXCEL2010 VBA SelectionChange...
-
VB.netである関数を呼んで、そ...
-
visual basic初心者です。 visu...
-
リストビューの列ヘッダーの幅...
-
VBAとVB6.0とC#の速度比較
-
subsequentとnextの違いってな...
-
VB.NET)コンボボックスの連動に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Functionの戻り値を配列にした...
-
Excel VBAでsub,dimは何の略?
-
xmlの値を配列変数に格納し...
-
2次元配列のデータをファイルへ...
-
VB6で配列を引数にするときの2...
-
VBA public変数はどのようなこ...
-
エクセルVBAでテキストボッ...
-
他のフォームから別のフォーム...
-
レコードセットにnullの場合
-
VBAで入力数値について
-
VBAでcallで呼び出したsubを終...
-
チェックボックスを操作できな...
-
C#のループでtextboxに値を入れ...
-
【VB6.0】 あるフォームから他...
-
アクセスできない保護レベルエ...
-
VB.NETでのイベントの途中終了
-
【VB.NET】テキストボックスに...
-
テキストボックスかラベル上の...
-
ユーザーフォームへのデータ入...
-
texで図と表を並べたい
おすすめ情報