Esempio n. 1
0
        public ActionResult Details(int id, int part)
        {
            var overviewmodel = RenderDay.GetOverview();

            var AoCDay = overviewmodel.Where(c => c.ID == id).FirstOrDefault();

            if (AoCDay != null)
            {
                var puzzleString = string.Empty;
                var sw           = new Stopwatch();
                sw.Start();

                switch (part)
                {
                case 0:
                    puzzleString = AoCDay.Part1();
                    break;

                case 1:
                    puzzleString = AoCDay.Part2();
                    break;

                default:
                    break;
                }
                ViewBag.puzzleString = string.Format("Answer = {0} ({1} ms)", puzzleString, sw.ElapsedMilliseconds);
                sw.Stop();
            }

            return(View("Index", overviewmodel));
        }
Esempio n. 2
0
        public ActionResult AllDetails()
        {
            var puzzleString  = string.Empty;
            var sw            = new Stopwatch();
            var overviewmodel = RenderDay.GetOverview();
            var sb            = new StringBuilder();

            sw.Start();
            var startTime = sw.ElapsedMilliseconds;

            foreach (var day in overviewmodel)
            {
                var day1     = day.Part1();
                var day1Time = sw.ElapsedMilliseconds - startTime;
                var day2     = day.Part2();
                var day2Time = sw.ElapsedMilliseconds - startTime - day1Time;
                sb.AppendLine($"{day.Name} part1 answer: {day1} ({day1Time} ms), part2 answer: {day2} ({day2Time} ms))");
                startTime = sw.ElapsedMilliseconds;
            }
            sw.Stop();
            sb.AppendLine($"Total executionTime {sw.ElapsedMilliseconds} ms");
            ViewBag.puzzleString = sb.ToString();

            return(View("Index", overviewmodel));
        }
Esempio n. 3
0
        //TODO make private leaderboard JSON with cookie WORK :)
        public async Task <ActionResult> GetLeaderBoard()
        {
            var overviewmodel = RenderDay.GetOverview();
            var leaderboard   = await GetJSON();

            ViewBag.leaderboard = leaderboard;
            return(View("Index", overviewmodel));
        }
Esempio n. 4
0
        public void Test1()
        {
            var averageRunTime = new HashSet <long>();

            //Execute puzzle 30 times
            for (int i = 0; i < 1; i++)
            {
                var sw = new Stopwatch();
                sw.Start();
                var day   = RenderDay.GetDay(22);
                var check = day.Part2();
                if (check != day.Solution()[1])
                {
                    throw new Exception("Niet get goede antwoord!");
                }
                sw.Stop();
                averageRunTime.Add(sw.ElapsedMilliseconds);
            }
            Debug.WriteLine($"Average complete in {averageRunTime.Average()} ms");
        }
Esempio n. 5
0
        public ActionResult Index()
        {
            var overviewmodel = RenderDay.GetOverview();

            return(View("Index", overviewmodel));
        }