static void Main(string[] args)
 {
     //Day1.A();
     //Day1.B();
     Day2.A();
     Day2.B();
 }
Example #2
0
        public void Day2_CalculateRowCount()
        {
            var count = Day2.CalculateRowCount("abcdef");

            Assert.AreEqual(0, count.TwoCount);
            Assert.AreEqual(0, count.ThreeCount);

            count = Day2.CalculateRowCount("bababc");
            Assert.AreEqual(1, count.TwoCount);
            Assert.AreEqual(1, count.ThreeCount);

            count = Day2.CalculateRowCount("abbcde");
            Assert.AreEqual(1, count.TwoCount);
            Assert.AreEqual(0, count.ThreeCount);

            count = Day2.CalculateRowCount("abcccd");
            Assert.AreEqual(0, count.TwoCount);
            Assert.AreEqual(1, count.ThreeCount);

            count = Day2.CalculateRowCount("aabcdd");
            Assert.AreEqual(1, count.TwoCount);
            Assert.AreEqual(0, count.ThreeCount);

            count = Day2.CalculateRowCount("abcdee");
            Assert.AreEqual(1, count.TwoCount);
            Assert.AreEqual(0, count.ThreeCount);

            count = Day2.CalculateRowCount("ababab");
            Assert.AreEqual(0, count.TwoCount);
            Assert.AreEqual(1, count.ThreeCount);
        }
Example #3
0
        public void Part2()
        {
            var input = new[] { "5 9 2 8", "9 4 7 3", "3 8 6 5" };
            var day2  = new Day2();

            day2.Part2(input).Should().Be("9");
        }
Example #4
0
        public void Part2Test3()
        {
            var day2   = new Day2();
            var result = day2.Part2(_input);

            Assert.AreEqual(3842356, result);
        }
Example #5
0
    public async Task TestDay2Part2()
    {
        var inputMock    = PrepareInput();
        var objUnderTest = new Day2(inputMock.Object);

        Assert.That(await objUnderTest.Part2(), Is.EqualTo(1));
    }
Example #6
0
        public void SolveChecksumB()
        {
            string spreadsheet = @"6046	6349	208	276	4643	1085	1539	4986	7006	5374	252	4751	226	6757	7495	2923
1432	1538	1761	1658	104	826	806	109	939	886	1497	280	1412	127	1651	156
244	1048	133	232	226	1072	883	1045	1130	252	1038	1022	471	70	1222	957
87	172	93	73	67	192	249	239	155	23	189	106	55	174	181	116
5871	204	6466	6437	5716	232	1513	7079	6140	268	350	6264	6420	3904	272	5565
1093	838	90	1447	1224	744	1551	59	328	1575	1544	1360	71	1583	75	370
213	166	7601	6261	247	210	4809	6201	6690	6816	7776	2522	5618	580	2236	3598
92	168	96	132	196	157	116	94	253	128	60	167	192	156	76	148
187	111	141	143	45	132	140	402	134	227	342	276	449	148	170	348
1894	1298	1531	1354	1801	974	85	93	1712	130	1705	110	314	107	449	350
1662	1529	784	1704	1187	83	422	146	147	1869	1941	110	525	1293	158	1752
162	1135	3278	1149	3546	3686	182	149	119	1755	3656	2126	244	3347	157	865
2049	6396	4111	6702	251	669	1491	245	210	4314	6265	694	5131	228	6195	6090
458	448	324	235	69	79	94	78	515	68	380	64	440	508	503	452
198	216	5700	4212	2370	143	5140	190	4934	539	5054	3707	6121	5211	549	2790
3021	3407	218	1043	449	214	1594	3244	3097	286	114	223	1214	3102	257	3345"                            ;

            var sut = new Day2(spreadsheet);

            var checksum = sut.CalculateChecksumB();

            Console.WriteLine(checksum);
        }
Example #7
0
        public void Part1Test3()
        {
            var day2   = new Day2();
            var result = day2.Part1(_input);

            Assert.AreEqual(1606483, result);
        }
Example #8
0
        public void Q1()
        {
            var day2   = new Day2(_parseInput());
            var result = day2.RunQ1();

            Assert.Equal(3952, result);
        }
Example #9
0
        public void Part2Test()
        {
            var    day   = new Day2();
            string input = "abcde\nfghij\nklmno\npqrst\nfguij\naxcye\nwvxyz";

            Assert.Equal("fgij", day.GetPart2Answer(input));
        }
Example #10
0
        public void Q2()
        {
            var day2   = new Day2(_parseInput());
            var result = day2.RunQ2();

            Assert.Equal("vtnikorkulbfejvyznqgdxpaw", result);
        }
Example #11
0
        public void Day2CanDoTheCheckSum()
        {
            var day2   = new Day2(_testInputs);
            var result = day2.RunQ1();

            Assert.Equal(12, result);
        }
Example #12
0
        public void TestDay2Part2()
        {
            string[] input  = System.IO.File.ReadAllLines("../../../../inputs/day-2.txt");
            string   answer = new Day2().PartTwo(input);

            Assert.AreEqual("xretqmmonskvzupalfiwhcfdb", answer);
        }
Example #13
0
        public void TestDay2Part1()
        {
            string[] input  = System.IO.File.ReadAllLines("../../../../inputs/day-2.txt");
            int      answer = new Day2().PartOne(input);

            Assert.AreEqual(5976, answer);
        }
Example #14
0
        public void PartBTests(string input, string expectedOutput)
        {
            var day    = new Day2();
            var result = day.SolveB(input);

            Assert.AreEqual(expectedOutput, result);
        }
        public void ItShouldMarkSecondExampleCorrectly()
        {
            var policyAndPassword = "******";

            Assert.That(Day2.IsPart1PasswordValid(policyAndPassword), Is.False);
            Assert.That(Day2.IsPart2PasswordValid(policyAndPassword), Is.False);
        }
Example #16
0
        public void Part1Test()
        {
            var    day   = new Day2();
            string input = "abcdef\nbababc\nabbcde\nabcccd\naabcdd\nabcdee\nababab";

            Assert.Equal("12", day.GetPart1Answer(input));
        }
Example #17
0
        public static void Day2Max()
        {
            var day2 = new Day2();

            int[] arr = new int[] { 1, 2, 3, 6 };
            Console.WriteLine(day2.max(new int[] { 1, 2, 3, 6 }));
        }
        public void _7_should_return_correct_result(int[] intCode, int value, int noun, int verb)
        {
            Tuple <int, int> result = Day2.GetNounAndVerbForIntCode(intCode, value);

            Assert.AreEqual(noun, result.Item1);
            Assert.AreEqual(verb, result.Item2);
        }
Example #19
0
        public void Task2()
        {
            var passwords = _passwordList.Split("\r\n");
            var output    = new Day2().Part2(passwords);

            Assert.Pass(output.ToString());             // Answer is 352.
        }
Example #20
0
        public void DifferenceShouldCalculateDifferenceBetweenHighestAndLowestInSingleRow_tabs()
        {
            var input      = "5\t1\t9\t5";
            var difference = Day2.differenceBetweenLargestAndSmallest(input);

            Assert.Equal(8, difference);
        }
Example #21
0
        public void Part2Test2()
        {
            var day2   = new Day2();
            var result = day2.Part2("1x1x10");

            Assert.AreEqual(14, result);
        }
Example #22
0
        public void DifferenceShouldCalculateDifferenceBetweenHighestAndLowestInSingleRow_spaces()
        {
            var input      = "7 5 3";
            var difference = Day2.differenceBetweenLargestAndSmallest(input);

            Assert.Equal(4, difference);
        }
Example #23
0
        public void Part1Test1()
        {
            var day2   = new Day2();
            var result = day2.Part1("2x3x4");

            Assert.AreEqual(58, result);
        }
Example #24
0
        private static void RunDay2()
        {
            var day2 = new Day2();

            day2.RunTask1();
            day2.RunTask2();
        }
Example #25
0
        public void Day2_CountRow()
        {
            var count = Day2.CountRow("abcdef");

            Assert.AreEqual(6, count.Count);
            Assert.AreEqual(1, count['a']);
        }
Example #26
0
        static void Main(string[] args)
        {
            PuzzleSolver puzzleSolver;

            puzzleSolver = new Day1(InputStrings.InputStringDay1);
            puzzleSolver.SolvePuzzles();

            puzzleSolver = new Day2(InputStrings.InputStringDay2);
            puzzleSolver.SolvePuzzles();

            puzzleSolver = new Day3(InputStrings.InputStringDay3);
            puzzleSolver.SolvePuzzles();

            puzzleSolver = new Day4(InputStrings.InputStringDay4);
            puzzleSolver.SolvePuzzles();

            puzzleSolver = new Day5(InputStrings.InputStringDay5);
            puzzleSolver.SolvePuzzles();

            puzzleSolver = new Day6(InputStrings.InputStringDay6);
            puzzleSolver.SolvePuzzles();

            puzzleSolver = new Day7(InputStrings.InputStringDay7);
            puzzleSolver.SolvePuzzles();

            puzzleSolver = new Day8(InputStrings.InputStringDay8);
            puzzleSolver.SolvePuzzles();
        }
Example #27
0
        public async Task Day2_Task2(string file, int expected)
        {
            var count = await Day2.Task2(file);

            Assert.Equal(expected, count);
            _output.WriteLine($"{count}");
        }
        public void ItShouldMarkFirstExampleCorrectly()
        {
            var policyAndPassword = "******";

            Assert.That(Day2.IsPart1PasswordValid(policyAndPassword), Is.True);
            Assert.That(Day2.IsPart2PasswordValid(policyAndPassword), Is.True);
        }
Example #29
0
        public void Part1()
        {
            var input = new[] { "5 1 9 5", "7 5 3", "2 4 6 8" };
            var day2  = new Day2();

            day2.Part1(input).Should().Be("18");
        }
Example #30
0
        public void Part2()
        {
            var day    = new Day2(_testInput);
            var result = day.CountValidPasswordsPart2();

            Assert.Equal(1, result);
        }