tidy input parser for 2023/4
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
This commit is contained in:
parent
7a9d1e2224
commit
843f58cf8c
|
@ -1,5 +1,3 @@
|
||||||
using MoreLinq;
|
|
||||||
|
|
||||||
namespace AOC2023;
|
namespace AOC2023;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -13,14 +11,16 @@ public sealed class Day04() : Day(2023, 4, "Scratchcards")
|
||||||
{
|
{
|
||||||
foreach (var line in Input)
|
foreach (var line in Input)
|
||||||
{
|
{
|
||||||
var s = line.Split(": ", 2);
|
var s = line.Replace("Card ", "").Split(": ", 2);
|
||||||
var id = int.Parse(s[0].Replace("Card ", ""));
|
var cardNums = s[1]
|
||||||
var s2 = s[1].Split('|', 2);
|
.Split('|', 2)
|
||||||
var f = s2[0].Split(' ', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries)
|
.Select(f =>
|
||||||
.Select(int.Parse).ToList();
|
f.Split(' ', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries)
|
||||||
var g = s2[1].Split(' ', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries)
|
.Select(int.Parse)
|
||||||
.Select(int.Parse).ToList();
|
.ToList()
|
||||||
_cards[id] = new(f, g);
|
)
|
||||||
|
.ToList();
|
||||||
|
_cards[int.Parse(s[0])] = new(cardNums[0], cardNums[1]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue