in reply to secret santa

As has been pointed out, if you only need one derangement, it's better to simply shuffle the array (as you're doing - FY) and then simply rotate the copy.

We're building the house of the future together.