Creo que somos unos cuantos que no entendimos la solución planteada al problema dado. Entiendo que querían que se parezca al problema de los filósofos pero no se corresponde, ya que en ese problema por limitación del recurso 'tenedor' se necesitaba limitar la cantidad de filósofos que 'entraban' a la mesa. Pero en el problema del parcial, al existir la opción de tomar 1 o 2, ya no se tendría que limitar la cantidad de amateurs, pues una posible situación del problema es que 30 nadadores amateurs con un flotador cada uno estén nadando en la piscina, es algo que la solución tiene que contemplar y muchos hicimos la solución teniendo en cuenta eso, ya que la idea es contemplar todas las situaciones que abarca el problema, por eso es que "serializamos" ya que de esta forma se controlaba el ORDEN de llegada de los amateurs y se permitía la situación mencionada. Esa situación no esta contemplada en la solución del parcial, entonces, es solución o no del problema?
Me sacaron 10 puntos del 3, por la serialización y porque me comí un signal() al final del entra_amateurs(). Con respecto a lo primero lo explique en la muestra, "me entendieron" y solo me dieron 2 puntos. Por ende entiendo que el error del signal() me quitó 8 puntos, que creo es un error mas 'tolerable' (1 lineal de código, que obviamente no fue por falta de conocimiento, ya que fue el único error) y no se si es para restar 8 puntos; así como en la solución que subieron en vez de ==29 debería ser >=, ya que con el == pueden entrar 500 amateurs y quedar en deadlock.
Yo creo que en la muestra el reajuste se debe hacer el momento, sino es como ir medio en vano. No creo que sea fácil recordar lo que hablaste con cada uno y recorregir de nuevo teniendo en cuanta la defensa de cada alumno.