Class SolutionDay9
java.lang.Object
com.expedient.adventofcodejade.BaseSolution
com.expedient.adventofcodejade.solutions.year2024.SolutionDay9
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordstatic final record -
Constructor Summary
ConstructorsConstructorDescriptionSolutionDay9(PuzzleInput input, PuzzleInput sampleInputOne, PuzzleInput sampleInputTwo) -
Method Summary
Modifier and TypeMethodDescriptionstatic Pair<SolutionDay9.FileSystemBlock[], List<SolutionDay9.File>> buildFileSystem(PuzzleInput input) static LongcalculateCheckSum(SolutionDay9.FileSystemBlock[] fileSystem) static voidOverwriteNextNullWithFile(SolutionDay9.FileSystemBlock[] fileSystem, int fileLength, int fileId, int fileEnd) partOne(PuzzleInput input) Logic for part one of the solution.partTwo(PuzzleInput input) Logic for part two of the solution.static voidSortFileSystem(SolutionDay9.FileSystemBlock[] fileSystem) static voidSortFileSystemByFile(SolutionDay9.FileSystemBlock[] fileSystem, List<SolutionDay9.File> files) Methods inherited from class com.expedient.adventofcodejade.BaseSolution
getInput, run
-
Constructor Details
-
SolutionDay9
-
-
Method Details
-
calculateCheckSum
-
buildFileSystem
public static Pair<SolutionDay9.FileSystemBlock[],List<SolutionDay9.File>> buildFileSystem(PuzzleInput input) -
SortFileSystem
-
OverwriteNextNullWithFile
public static void OverwriteNextNullWithFile(SolutionDay9.FileSystemBlock[] fileSystem, int fileLength, int fileId, int fileEnd) -
SortFileSystemByFile
public static void SortFileSystemByFile(SolutionDay9.FileSystemBlock[] fileSystem, List<SolutionDay9.File> files) -
partOne
Description copied from class:BaseSolutionLogic for part one of the solution. Must be overridden when implementing the solution.- Specified by:
partOnein classBaseSolution- Parameters:
input- the PuzzleInput to be used for the solution- Returns:
- output of this part of the solution
-
partTwo
Description copied from class:BaseSolutionLogic for part two of the solution. Must be overridden when implementing the solution.- Specified by:
partTwoin classBaseSolution- Parameters:
input- the PuzzleInput to be used for the solution- Returns:
- output of this part of the solution
-