Não faz sentido criar vagas somente criando uma matriz transposta das vagas originais.
Ou seja, toda vez que eu tiver um estacionamento lotado (no exemplo, um estacionamento 3x3 ) , peço para o pessoal desocupar a última fileira, ficando uma estacionamento (3x2), faço a transposta (ficando 2x3) e magicamente eu tenho um estacionamento (4x3)?
Se entrar mais colaboradores, é só seguir este procedimento? retiro a ultima fileira, faço a transposta, e pronto. Novas vagas aparecem.