private static string MoveCups(string initialPosition, int moves) { var cups = new Cups(initialPosition.Select(c => (long)int.Parse(c.ToString()))); for (var i = 0; i < moves; i++) { var removed = cups.RemoveThreeClockwiseOfCurrent(); cups.InsertCups(removed); } return(cups.CurrentState); }