示例#1
0
        public static void callCombinationSums()
        {
            CombinationSum prb    = new CombinationSum();
            var            retval = prb.FindCombination(new int[] { 2, 7, 6, 3, 5, 1 }, 9);

            Console.ReadKey();
        }
示例#2
0
        public void Given_array_When_find_Then_return()
        {
            var nums = new int[] { 2, 3, 6, 7 };

            var result = CombinationSum.CombinationSumFunc(nums, 7);

            Assert.AreEqual(2, result.Count);
        }
        public void TestCombinationSum()
        {
            var f = new CombinationSum();

            var answers = f.Run(new int[] { 2, 3, 6, 7 }, 7);

            answers = f.Run(new int[] { 2, 3, 5 }, 8);
        }
示例#4
0
        public void TestWithNumRepeat()
        {
            var r = CombinationSum.WithCandidatesNoRepeat(new[] { 2, 7, 3 }, 7);

            Assert.AreEqual(r.Count, 2);

            r = CombinationSum.WithCandidatesNoRepeat(new[] { 2, 3, 5 }, 8);
            Assert.AreEqual(r.Count, 3);
        }
示例#5
0
        public void TestSum3()
        {
            var r = CombinationSum.Sum3(3, 7);

            Assert.AreEqual(r.Count, 1);

            r = CombinationSum.Sum3(3, 9);
            Assert.AreEqual(r.Count, 3);
        }
示例#6
0
        public void TestWithNoRepeat()
        {
            var r = CombinationSum.WithNoRepeat(new[] { 10, 1, 2, 7, 6, 1, 5 }, 8);

            Assert.AreEqual(r.Count, 4);

            r = CombinationSum.WithNoRepeat(new[] { 2, 5, 2, 1, 2 }, 5);
            Assert.AreEqual(r.Count, 2);
        }
示例#7
0
 public void FindCombinationSum_Test()
 {
     int[]          arr      = new int[] { 10, 1, 2, 7, 6, 1, 5 };
     ISort          sort     = new QuickSort();
     CombinationSum obj      = new CombinationSum(arr, sort);
     var            actual   = obj.FindCombinationSum(8);
     List <int[]>   expected = new List <int[]>()
     {
         new int[] { 1, 7 },
         new int[] { 1, 2, 5 },
         new int[] { 2, 6 },
         new int[] { 1, 1, 6 }
     };
 }
示例#8
0
        static void Main(string[] args)
        {
            //int[] nums = new int[7];
            //foreach (var n in nums)
            //{
            //    Console.WriteLine(n);
            //}
            // BestTimeToBuyAndSellStock3 stock3 = new BestTimeToBuyAndSellStock3();
            // int[] money = new int[] {10,20,5,20,4,10,9,100,9,30,8,200};
            //// stock3.maxProfit(money);
            // int[] rating = new[] {1, 2, 6, 4, 5,3, 8, 10};
            // Candy candy=new Candy();
            // candy.candy(rating);
            int[] arr    = new[] { 2, 9, 3, 4, 7, 5, 1, 30 };
            int   target = 8;

            int[]          arr2    = new[] { 2, 3, 6, 7 };
            int            target2 = 7;
            CombinationSum cs      = new CombinationSum();

            cs.combinationSum(arr, target);
            Console.ReadKey();
        }
示例#9
0
 public void BeforeEach()
 {
     CombinationSum = new CombinationSum();
 }