Esempio n. 1
0
        public void compute_to_max_32_bit_int()
        {
            var input  = new[] { "0-2147483640", "2147483647-2147483647" };
            var ranges = new RangeCompare(input, int.MaxValue);

            ranges.CalculateNonBlocked();
            Assert.AreEqual(6, ranges.Count);
        }
Esempio n. 2
0
        public void return_none_allowed_in_range()
        {
            var input  = new[] { "0-3", "2-4", "2-7", "8-10" };
            var ranges = new RangeCompare(input, 10);

            ranges.CalculateNonBlocked();
            Assert.AreEqual(0, ranges.Count);
        }
Esempio n. 3
0
        public void return_count_of_allowed_in_range()
        {
            var input  = new[] { "2-4", "1-3", "2-3", "8-10", "5-5", "9-8" };
            var ranges = new RangeCompare(input, 10);

            ranges.CalculateNonBlocked();
            Assert.AreEqual(3, ranges.Count);
        }
Esempio n. 4
0
        public void return_zero_if_first()
        {
            var input  = new[] { "1-3", "2-4", "2-3" };
            var ranges = new RangeCompare(input, 10);

            ranges.CalculateNonBlocked();
            Assert.AreEqual(0, ranges.First);
        }
Esempio n. 5
0
        public void return_first_non_blocked_int_considering_duplicates()
        {
            var input  = new[] { "0-3", "2-4", "2-3" };
            var ranges = new RangeCompare(input, 10);

            ranges.CalculateNonBlocked();
            Assert.AreEqual(5, ranges.First);
        }
Esempio n. 6
0
        static void Main(string[] args)
        {
            string fileName = "C:\\Source\\AdventOfCode\\Day20\\input.txt";
            var    file     = new FileImportAdapter();

            string[] input        = file.ReadFileToArray(fileName);
            var      rangeCompare = new RangeCompare(input, uint.MaxValue);

            rangeCompare.CalculateNonBlocked();
            Console.Write("Lowest : " + rangeCompare.First);
            Console.Write(" IP Count : " + rangeCompare.Count);
            Console.ReadKey();
        }