aoc2020/aoc2020/Day05.cs
Ben Harris 3ba6c967f8
Some checks failed
continuous-integration/drone/push Build is failing
prefer expression body
2021-11-12 17:56:41 -05:00

23 lines
689 B
C#

namespace aoc2020;
/// <summary>
/// Day 5: <see href="https://adventofcode.com/2020/day/5" />
/// </summary>
public sealed class Day05 : Day
{
private readonly ImmutableHashSet<int> _ids;
public Day05() : base(5, "Binary Boarding") =>
_ids = Input
.Select(s =>
Convert.ToInt32(s.Replace('F', '0').Replace('B', '1').Replace('L', '0').Replace('R', '1'), 2))
.OrderBy(i => i)
.ToImmutableHashSet();
public override string Part1() => $"{_ids.Last()}";
public override string Part2() =>
// arithmetic sum of full series
$"{(_ids.Count + 1) * (_ids.First() + _ids.Last()) / 2 - _ids.Sum()}";
}