Entiendo que el semaforo try se usa para intentar entrar a la sala de a un Tecnico a la vez, y tambien se usa del lado de TH en caso de que haya al menos un TH esperando para entrar, para bloquear los intentos de entrada, hasta que los TH esperando para entrar sean 0.
Pero si ese es el comportamiento, y yo tengo 2 TH y 3TS, cuando entra el primer TH se queda con el try, deja entrar el segundo TH, porque se saltea la condicion del p(try) ya que cantTH > 1 (es 2), pero los 3 TS no pueden acceder xq el try sigue siendo 0 ya que hasta que el ultimo TH de esos dos no salga, no se va a hacer un V(try).
No se si es que estoy razonando algo mal o que, dejo debajo la consigna y la solucion
Se tiene un controlador para entrar en una sala de servidores. A la sala entran a realizarmantenimiento tanto técnicos de software (TS) como de hardware (TH) y sólo pueden entrar 5 personas al mismo tiempo. los TH tienen prioridad para entrar por sobre los TS, sin embargodentrodecadasubgruponoexisteningúnordenespecificado.