| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 3 초 | 1024 MB | 0 | 0 | 0 | 0.000% |
Du spelar fiskspelet. Du är en fisk som ska äta mindre fiskar men aldrig får bli uppäten av större fiskar. Fiskarna ändrar aldrig storlek. Du får poäng för varje fisk du äter och självklart vill du ha så mycket poäng som möjligt.
Spelplanen kan ses som ett rutnät med $H$ rader (numrerade från $1$ till $H$) men obegränsat antal kolumner. Du befinner dig i kolumnen $x=0$ och kan bara röra dig vertikalt (uppåt och nedåt). De andra fiskarna rör sig däremot aldrig vertikalt utan börjar i en viss kolumn $x>0$ och flyter med konstant fart åt vänster (mot din kolumn).
Alla fiskar (även du) har bredden $1$ ruta. Din höjd är $7$. Det finns tre andra sorters fiskar: "liten" med höjd $3$, "mellan" med höjd $5$ och "stor" med höjd $9$. Fiskarna har olika hastigheter. Varje sekund kan du röra dig en ruta uppåt eller nedåt (eller stå stilla). På samma tid rör sig en liten fisk $1$ ruta, en mellanfisk $2$ rutor och en stor fisk $3$ rutor åt vänster. Du väljer själv på vilken höjd-nivå din fisk ska börja, men observera att hela fisken alltid måste vara inom spelplanen.
En fisk kan äta fiskar som är mindre än den själv. Du kan alltså äta fiskar av storlek $3$ och $5$, och får då $10$ respektive $20$ poäng. Men fiskar av höjd $9$ kommer att äta upp dig, och du måste akta dig för dem. Skulle du bli uppäten förlorar du. För att det inte ska bli orättvist vem som äter vem så har sjöjungfrun Arashiel bestämt att följande sker i varje diskret sekundsteg:
På första raden står två heltal, $N$ ($1 \leq N \leq 50\,000$), antalet fiskar, och $H$ ($20 \leq H \leq 1\,000$), höjden på banan.
Sedan följer $N$ rader, en för varje fisk. På varje rad står först en bokstav, L/M/S, alltså om fisken är liten, mellan eller stor. Därefter följer kolumnen $x$ som fisken startar på ($2 \leq x \leq 10^{16}$), samt vilken rad $y$ som utgör fiskens mellersta ruta (alltid vald så att hela fisken får plats inom intervallet $[1, h]$). De tre värdena åtskiljs med blanksteg.
Dessutom gäller att:
Skriv ut en rad med ett enda heltal, antalet poäng du får om du spelar spelet optimalt.
3 20 L 4 2 S 30 8 M 20 18
20
3 20 L 4 2 S 42 8 M 22 18
30
2 20 L 6 3 L 6 12
10
4 20 L 10 6 L 20 5 L 30 7 M 40 6
30
3 20 L 18 3 L 16 9 M 20 6
20
3 20 L 12345678901234 3 L 12345678901234 9 M 12345678901232 6
40
3 20 L 12345678901234 3 L 12345678901234 9 M 12345678901236 6
20
Figure 1: Situationen i exempelfall 1
En möjlig lösning till det första exemplet visas i figure 1. De heldragna färgade rektanglarna visar fiskarnas utgångspositioner och de streckade rektanglarna visar deras positioner efter $4$ respektive $8$ sekunder. Den svarta rektangeln visar en av flera optimala utgångspositioner för dig. I detta fall kan du helt enkelt stå stilla och invänta den gröna mellanfisken.
Figure 2: Situationen i exempelfall 2
En möjlig lösning till det andra exemplet visas i figure 2. Den svarta rektangeln visar var du måste befinna dig vid tiden $t=4$ sekunder när du äter den blå lilla fisken (det går bra att även ha detta som utgångsposition). Den delade rutan markerar att fiskarna överlappar på denna ruta. Sedan måste du röra dig i full fart uppåt för att kunna äta den gröna mellanfisken vid $t=11$ (din position visas då av den grå streckade rektangeln). Slutligen måste du fortsätta uppåt för att undkomma den röda stora fisken som når din kolumn vid $t=14$ (detta skulle bli för kladdigt att visa i figuren).
Olympiad > Swedish Olympiad in Informatics > 2014 > Final F번