public void RearrangePrograms()
        {
            var spin  = new Spin(3);
            var input = new char[] { 'a', 'b', 'c', 'd', 'e' };

            Assert.Equal(new char[] { 'c', 'd', 'e', 'a', 'b' }, spin.ApplyStep(input));

            spin  = new Spin(1);
            input = new char[] { 'a', 'b', 'c', 'd', 'e' };
            Assert.Equal(new char[] { 'e', 'a', 'b', 'c', 'd' }, spin.ApplyStep(input));
        }