2016 day 6
This commit is contained in:
parent
2103805f95
commit
1e2e85bc74
|
@ -11,13 +11,14 @@ public class Test2016
|
|||
[DataRow(typeof(Day03), "993", "1849")]
|
||||
[DataRow(typeof(Day04), "361724", "482")]
|
||||
//[DataRow(typeof(Day05), "F77A0E6E", "999828EC")] // TODO: optimize day 5
|
||||
[DataRow(typeof(Day06), "gyvwpxaz", "jucfoary")]
|
||||
public void CheckAllDays(Type dayType, string part1, string part2) =>
|
||||
Common.CheckDay(dayType, part1, part2);
|
||||
|
||||
[DataTestMethod]
|
||||
[DataRow(typeof(Day02), "1985", "5DB3")]
|
||||
//[DataRow(typeof(Day05), "18F47A30", "05ACE8E3")]
|
||||
[DataRow(typeof(Day06), "easter", "")]
|
||||
[DataRow(typeof(Day06), "easter", "advent")]
|
||||
public void CheckTestInputs(Type dayType, string part1, string part2) =>
|
||||
Common.CheckDay(dayType, part1, part2, true);
|
||||
}
|
||||
|
|
|
@ -5,11 +5,44 @@ namespace AOC2016;
|
|||
/// </summary>
|
||||
public sealed class Day06() : Day(2016, 6, "Signals and Noise")
|
||||
{
|
||||
private List<string> _input;
|
||||
|
||||
public override void ProcessInput()
|
||||
{
|
||||
_input = Input.ToList();
|
||||
}
|
||||
|
||||
public override object Part1() => "";
|
||||
public override object Part1()
|
||||
{
|
||||
var answer = new char[_input[0].Length];
|
||||
|
||||
public override object Part2() => "";
|
||||
}
|
||||
for (var i = 0; i < _input[0].Length; i++)
|
||||
{
|
||||
answer[i] = _input
|
||||
.Select(l => l[i])
|
||||
.GroupBy(c => c)
|
||||
.OrderByDescending(g => g.Count())
|
||||
.Select(g => g.Key)
|
||||
.First();
|
||||
}
|
||||
|
||||
return new string(answer);
|
||||
}
|
||||
|
||||
public override object Part2()
|
||||
{
|
||||
var answer = new char[_input[0].Length];
|
||||
|
||||
for (var i = 0; i < _input[0].Length; i++)
|
||||
{
|
||||
answer[i] = _input
|
||||
.Select(l => l[i])
|
||||
.GroupBy(c => c)
|
||||
.OrderBy(g => g.Count())
|
||||
.Select(g => g.Key)
|
||||
.First();
|
||||
}
|
||||
|
||||
return new string(answer);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue