1

私は数字を持っているように、単一の整数を使用して整数の組み合わせを選びたい..今私が欲しいのは:
12341,2,3,4,12,23,34,123,234,1234

親切に助けて..??

4

2 に答える 2

0

私があなたを正しく理解しているなら、あなたは与えられた文字列のすべての部分文字列(この場合は番号1234)が必要です。したがって、長さnの文字列の場合、長さnの1つの部分文字列まで、長さ1のn個の部分文字列、長さ2のn −1個の部分文字列などがあります。

2つのネストされたループでこれを簡単に解決できるとすると、次のようになります。

public static IEnumerable<int> Foo(int x) {
  string s = x.ToString();
  for (int length = 1; length <= s.Length; length++) {
    for (int i = 0; i + length < s.Length; i++) {
      yield return int.Parse(s.Substring(i, length));
    }
  }
}

(テストされておらず、フェンスポストエラーが発生している可能性がありますが、アイデアは得られます。)

于 2012-09-22T08:08:59.507 に答える
0

C#ジェネリックを使用した順列、組み合わせ、バリエーションに関するこの記事はどうですか

ここでは、順列と組み合わせがコードとともに説明されています。

于 2012-09-22T08:09:50.817 に答える