示例#1
0
        static void part1()
        {
            int answerCount = 0;
            var input       = InputFetcher.GetInputAsString(InputFetcher.day6p1);
            var groups      = input.Split(new string[] { "\r\n\r\n" },
                                          StringSplitOptions.RemoveEmptyEntries);

            foreach (var group in groups)
            {
                var asnwers = string.Join(',', group.Replace("\r\n", ""));
                answerCount += asnwers.Distinct().Count();
            }
            Console.WriteLine($"Unique answers: {answerCount}");
        }
示例#2
0
        static void part2()
        {
            int answerCount = 0;
            var input       = InputFetcher.GetInputAsString(InputFetcher.day6p1);
            var groups      = input.Split(new string[] { "\r\n\r\n" },
                                          StringSplitOptions.RemoveEmptyEntries);

            foreach (var group in groups)
            {
                var answers = group.Split(new string[] { "\r\n" },
                                          StringSplitOptions.RemoveEmptyEntries).ToList();
                List <List <char> > generated = answers.Select(l => l.Select(c => c).ToList()).ToList();
                var intersection = generated.Aggregate((previousList, nextList) => previousList.Intersect(nextList).ToList());
                answerCount += intersection.Select(c => c).Count();
            }
            Console.WriteLine($"Unique answers: {answerCount}");
        }
示例#3
0
        private static void RunPart2()
        {
            var validPassportCounter = 0;
            var input     = InputFetcher.GetInputAsString(InputFetcher.day4p1);
            var passports = input.Split(new string[] { "\r\n\r\n" },
                                        StringSplitOptions.RemoveEmptyEntries);

            foreach (var passport in passports)
            {
                var pass = new Passport(passport);
                if (pass.IsValid())
                {
                    validPassportCounter++;
                }
            }
            Console.WriteLine($"PArt 2: Number of valid passports: {validPassportCounter}");
        }