Пример #1
0
        static void Main(string[] args)
        {
            string InputFileLocation = @"C:\Users\matta\Documents\AdventofCode2020\Inputs\";
            string InputFileName     = "Day19B.txt";
            string fileAsString      = File.ReadAllText(Path.Combine(InputFileLocation, InputFileName)).Replace("\r", "");

            string[] initialSplit = { "\n\n" };
            string[] splitFile    = fileAsString.Split(initialSplit, StringSplitOptions.RemoveEmptyEntries); //0 is rules, 1 is candidate strings
            string[] rules        = splitFile[0].Split('\n', StringSplitOptions.RemoveEmptyEntries);

            RulesInterpreter rulesInterpreter = new RulesInterpreter(rules);

            string[] messages     = splitFile[1].Split('\n', StringSplitOptions.RemoveEmptyEntries);
            int      runningTotal = 0;

            foreach (string message in messages)
            {
                if (rulesInterpreter.CheckMessage(message))
                {
                    runningTotal++;
                }
            }
            Console.WriteLine(runningTotal.ToString());
        }