123456
按以下规律组合
12 13 14 15 16
23 24 25 26
34 35 36
45 46
56按上面的规律一共可以组出15组数字,请问怎么写代码?并统计他的组合总数,谢谢大家!
再如
1234
按以下规律组合
12 13 14
23 24
34
一共是6组

解决方案 »

  1.   

    FOR()
    {FOR()
    } 两层循环
      

  2.   

     char[] arr = "123456".ToCharArray();
            for (int i = 0; i < arr.Length; i++)
            {
                for (int j = i + 1; j < arr.Length; j++)
              {
                  Console.Write(arr[i].ToString() + arr[j].ToString() + " ");
              } Console.Write("\n");
             }
            }
      

  3.   


                var candiates = "123456";            var ret = from a in candiates.ToCharArray()
                          from b in candiates.ToCharArray()
                          where candiates.IndexOf(b) > candiates.IndexOf(a)
                          select new string(new char[] { a, b });            ret.ToList().ForEach(s =>
                    {
                        Console.WriteLine(s);
                    });
      

  4.   

    i++计数
    也可使用LINQ ret.ToList().Count
      

  5.   

    char[] arr = "123456".ToCharArray();
    int count = 0;
      for (int i = 0; i < arr.Length; i++)
      {
      for (int j = i + 1; j < arr.Length; j++)
      {
      Console.Write(arr[i].ToString() + arr[j].ToString() + " ");
    count ++;
      } 
    Console.WriteLine();
    }
    Console.WriteLine(string.Format("Count:{0}",count));