diff --git a/AOC2022/AOC2022.csproj b/AOC2022/AOC2022.csproj
index 40085fb..e08cbb9 100644
--- a/AOC2022/AOC2022.csproj
+++ b/AOC2022/AOC2022.csproj
@@ -25,5 +25,8 @@
+
+
+
diff --git a/AOC2022/Day01.cs b/AOC2022/Day01.cs
index 35eb411..296f6ad 100644
--- a/AOC2022/Day01.cs
+++ b/AOC2022/Day01.cs
@@ -1,37 +1,24 @@
-namespace AOC2022;
+using MoreLinq.Extensions;
+
+namespace AOC2022;
///
/// Day 1:
///
public sealed class Day01 : Day
{
- private readonly List> _elfCalories = new();
+ private readonly List> _elfCalories;
public Day01() : base(2022, 1, "Calorie Counting")
{
- var elf = new List();
-
- foreach (var line in Input)
- {
- if (string.IsNullOrWhiteSpace(line))
- {
- _elfCalories.Add(elf);
- elf = new();
- }
- else
- elf.Add(int.Parse(line));
- }
-
- if (elf.Any()) _elfCalories.Add(elf);
+ _elfCalories = Input
+ .Split("")
+ .Select(e => e.Select(int.Parse).ToList())
+ .OrderByDescending(e => e.Sum())
+ .ToList();
}
- public override object Part1()
- {
- return _elfCalories.OrderByDescending(e => e.Sum()).First().Sum();
- }
+ public override object Part1() => _elfCalories.First().Sum();
- public override object Part2()
- {
- return _elfCalories.OrderByDescending(e => e.Sum()).Take(3).Sum(e => e.Sum());
- }
+ public override object Part2() => _elfCalories.Take(3).Sum(e => e.Sum());
}
\ No newline at end of file