Prisoners and hats puzzle