add stopwatch benchmarking
continuous-integration/drone/push Build is passing Details

This commit is contained in:
Ben Harris 2019-12-07 04:11:19 -05:00
parent 9dcee6f61d
commit 270cac64a4
1 changed files with 15 additions and 3 deletions

18
Day.cs
View File

@ -11,11 +11,23 @@ namespace aoc2019
public virtual IEnumerable<string> Input =>
File.ReadLines($"input/day{DayNumber}.in");
public virtual void AllParts()
public virtual void AllParts(bool verbose = false)
{
Console.WriteLine($"Day {DayNumber}:");
Console.WriteLine(Part1());
Console.WriteLine(Part2());
var s = new Stopwatch();
s.Start();
var part1 = Part1();
s.Stop();
if (verbose) Console.WriteLine($"part 1 elapsed ticks: {s.ElapsedTicks}");
Console.WriteLine(part1);
s.Reset();
s.Start();
var part2 = Part2();
s.Stop();
if (verbose) Console.WriteLine($"part 2 elapsed ticks: {s.ElapsedTicks}");
Console.WriteLine(part2);
Console.WriteLine();
}
public abstract string Part1();