Haz un programa que calcule los beneficios de los
jugadores de un casino. Los acontecimientos que describen lo que le
puede suceder a una persona P en el casino son:
"P enters": entra en el casino;
"P leaves": se va del casino; y
"P wins x": gana una cantidad x entera
(quizá negativa!).
Los ficheros públicos (icono del gatito) contienen:
main.cc |
el programa principal, vacío |
Makefile |
para compilar con make
cómodamente |
.vscode |
carpeta para compilar y depurar con VSCode |
Hay que enviar el programa entero en un solo fichero.
La entrada consiste en una lista cronológica de acontecimientos para
diferentes personas, en el formato mencionado. La entrada puede tener
acontecimientos inválidos, como: 1) un "enters" si la
persona ya estaba en el casino, 2) un "leaves" si la
persona no estaba en el casino, y 3) un "wins" si la
persona no estaba en el casino. En el caso de un acontecimiento
inválido, hay que ignorar el acontecimiento y seguir como si no hubiera
sucedido.
Cada vez que una persona sale del casino, hay que mostrar el
beneficio que ha conseguido (puede ser negativo), con la frase
"P has won x" (P es la persona y
x los beneficios). Al final, hay que dejar una línea vacía,
y después producir una lista ordenada por nombre de los beneficios de
cada persona que todavía estaba en el casino, usando la frase
"P is winning x".
Input
Anna enters Anna wins 50 Anna wins -200 Anna leaves Omer enters Jordi enters Omer wins 100 Miquel enters Omer wins -40 Omer leaves Jordi wins 30 Omer enters Omer wins -20
Output
Anna has won -150 Omer has won 60 Jordi is winning 30 Miquel is winning 0 Omer is winning -20
Input
Amalia leaves Berta wins 3 Cristina enters Cristina wins 7 Cristina enters Cristina leaves Cristina leaves
Output
Cristina has won 7