Você deve implementar uma solução para um problema clássico de comunicação entre processos: o Problema dos Barbeiros. Vimos em aula uma solução para uma versão desse problema na qual havia um único barbeiro e não havia limite no número de clientes esperando atendimento na barbearia.
Neste exercício você deve lidar com barbeiros trabalhando simultaneamente (ou seja, em vez de ter um barbeiro e uma cadeira de barbeiro, a barbearia agora tem barbeiros e cadeiras de barbeiro). Considere também que a barbearia tem assentos para os clientes que estão esperando que algum barbeiro os atenda. Quando um cliente chega à barbearia ele verifica se ela está lotada ou não. Se a barbearia estiver lotada (se todos os barbeiros estiverem atendendo clientes e todos os assentos de espera estiverem ocupados), ele sai sem ter seu cabelo cortado. Se a barbearia não estiver lotada, ele entra e espera pelo corte de seu cabelo.