public Day24Chain(Day24Chain chainToCloneAndExtend, Tuple <int, int> additionalComponent) : this() { chainToCloneAndExtend.Components.ToList().ForEach(c => Components.Add(c)); ChainValues.AddRange(chainToCloneAndExtend.ChainValues); var currentEnd = ChainValues.Last(); var newEnd = additionalComponent.Item1 == currentEnd ? additionalComponent.Item2 : additionalComponent.Item1; ChainValues.Add(newEnd); Components.Add(additionalComponent); }
public Day24Chain(Tuple <int, int> initialComponent) : this() { Components.Add(initialComponent); ChainValues.Add(0); ChainValues.Add(initialComponent.Item1 == 0 ? initialComponent.Item2 : initialComponent.Item1); }