コード例 #1
0
ファイル: Day.03.cs プロジェクト: gclodge/Advent.2020
        public void PartTwo()
        {
            var slopes = new List <Vector <double> >()
            {
                Utility.Functions.GetVector(1, 1),
                Utility.Functions.GetVector(3, 1),
                Utility.Functions.GetVector(5, 1),
                Utility.Functions.GetVector(7, 1),
                Utility.Functions.GetVector(1, 2),
            };

            var rows = Helpers.FileHelper.ParseFile(InputFile);
            var grid = new Classes.TreeGrid(rows);

            var results = new List <int>();

            foreach (var slope in slopes)
            {
                grid.TraverseAndCountTrees(slope);

                results.Add(grid.Trees.Count);
            }

            double val = 1;

            foreach (var res in results)
            {
                val *= res;
            }

            Assert.IsTrue(val == 6818112000);
        }
コード例 #2
0
ファイル: Day.03.cs プロジェクト: gclodge/Advent.2020
        public void PartOne()
        {
            var rows = Helpers.FileHelper.ParseFile(InputFile);

            var slope = Utility.Functions.GetVector(3, 1);

            var grid = new Classes.TreeGrid(rows);

            grid.TraverseAndCountTrees(slope);

            Assert.IsTrue(grid.Trees.Count == 228);
        }