Exemple #1
0
        public void TestClosestNumbers()
        {
            // https://www.hackerrank.com/challenges/closest-numbers/problem
            int[] o1 = ClosestNumbers.closestNumbers(new int[] { -20, -3916237, -357920, -3620601, 7374819,
                                                                 -7330761, 30, 6246457, -6461594, 266854 }); // -20 30

            int[] o2 = ClosestNumbers.closestNumbers(new int[] { -20, -3916237, -357920, -3620601, 7374819,
                                                                 -7330761, 30, 6246457, -6461594, 266854, -520, -470 }); // -520 -470 -20 30
        }
        public void closestNumbersTest()
        {
            foreach (ClosestNumbersTestData testData in TestDataList)
            {
                Console.WriteLine("Test input: " + string.Join(",", testData.InputArray));

                int[] result = ClosestNumbers.closestNumbers(testData.InputTarget, testData.InputNumbers,
                                                             testData.InputArray);
                Console.WriteLine("Test output: " + string.Join(",", result));

                CollectionAssert.AreEqual(testData.OutputArray, result);
            }
        }
        public void TestGetClosest()
        {
            var res = ClosestNumbers.GetClosest(new[] { -20, -3916237, -357920, -3620601, 7374819, -7330761, 30, 6246457, -6461594, 266854 });

            Assert.IsTrue(new [] { -20, 30 }.SequenceEqual(res));

            res = ClosestNumbers.GetClosest(new[] { -20, -3916237, -357920, -3620601, 7374819, -7330761, 30, 6246457, -6461594, 266854, -520, -470 });

            Assert.IsTrue(new[] { -520, -470, -20, 30 }.SequenceEqual(res));

            res = ClosestNumbers.GetClosest(new[] { 5, 4, 3, 2 });

            Assert.IsTrue(new[] { 2, 3, 3, 4, 4, 5 }.SequenceEqual(res));
        }
        public void TestClosestNumbers(int[] test1)
        {
            var result = ClosestNumbers.ClosestNumbersResolution(test1);

            result.Should().BeEquivalentTo(new int[] { -20, 30 });
        }