public async Task <(string, string, string)> Solve() { var input = await InputHandler.GetInputByLineAsync(nameof(Day02)); var navigationInstructions = input.Select(x => { var parts = x.Split(' '); return(new NavigationInstruction { Steps = int.Parse(parts[1]), Navigation = parts[0] }); }); var basicSubmarine = new Submarine.Submarine(0, 0, 0); var advancedSubmarine = new Submarine.Submarine(0, 0, 0); foreach (var navigationInstruction in navigationInstructions) { basicSubmarine.Move(navigationInstruction); advancedSubmarine.MoveWithAim(navigationInstruction); } var resultPartOne = basicSubmarine.PositionResult; var resultPartTwo = advancedSubmarine.PositionResult; return(nameof(Day02), resultPartOne.ToString(), resultPartTwo.ToString()); }
public ISubmarine build() { submarine = new Submarine.Submarine(employeeCount, daysUnderWater); return(submarine); }