Scarica la traccia nel linguaggio che preferisci, poi modifica il programma aggiungendo le parti che mancano!
- Scarica la traccia in Scratch: dadi.sb3
- Scarica la traccia in pseudocodice: dadi.srs
- Scarica la traccia in C: dadi.c
- Scarica la traccia in C++: dadi.cpp
- Scarica la traccia in Python: dadi.py
- Scarica la traccia in Java: dadi.java
- Scarica la traccia in C#: dadi.cs
- Scarica la traccia in JavaScript: dadi.html
Bunny adora fare il gioco del coniglio con Tip-Tap! In questo gioco, a turni si tirano alcuni dadi con 4 facce, ottenendo come punteggio la somma di tutti i dadi tirati. Tip-Tap è stufo di vedere Bunny vincere sempre, allora ha deciso che vuole barare: se Bunny si distrae per secondi, Tip-Tap ha il tempo per modificare il risultato di dadi, mettendoli su una nuova faccia per aumentare il suo punteggio più possibile.
In ogni turno di gioco, sai che Bunny si distrae per secondi, e che Tip-Tap ottiene volte il numero 1, volte il numero 2, volte il numero 3, e volte il numero 4. Quale punteggio al massimo può ottenere Tip-Tap?
Come primo esempio, supponi che Bunny si distragga per 1 secondo, e che Tip-Tap abbia ottenuto un numero 1, un numero 2, un numero 3 e un numero 4. Allora Tip-Tap può girare il dado che mostra , rendendolo un , e ottenendo un punteggio di .
Come secondo esempio, supponi che Tip-Tap abbia ottenuto gli stessi risultati, ma che Bunny si distragga per 2 secondi. Allora Tip-Tap può girare il dado che mostra , rendendolo un , e poi può girare il dado che mostra , rendendolo un altro . Il suo punteggio sarà quindi .
Come terzo esempio, supponi che Bunny si distragga per 3 secondi, e che Tip-Tap abbia non ottenuto nessun numero 1, un numero 2, nessun numero 3, e quattro numeri 4. Allora Tip-Tap può girare il dado che mostra , rendendolo un . Nei due secondi rimanenti potrebbe girare altri dadi, ma non gli farebbe aumentare il punteggio: quello che ottiene è quindi .
Nel file di input che scaricherai saranno presenti esattamente casi da risolvere. In tutti sarà vero che:
Inoltre, nei primi casi da risolvere vale che e non ci sono dadi con facce o . Poi, nei successivi casi da risolvere vale che , e nei successivi casi da risolvere non ci sono dadi con facce o .
La prima riga del file di input contiene il numero di casi da risolvere. Seguono casi da risolvere, numerati da a , separati da una riga vuota. Ogni caso da risolvere è descritto da due righe:
Per esempio, i tre casi descritti prima si rappresentano così:
Input:
3
1
1 1 1 1
2
1 1 1 1
3
0 1 0 4
Il file di output deve contenere la risposta ai casi che sei riuscito a risolvere. Per ogni caso che hai risolto, il file di output deve contenere una riga con scritto:
Case #t: x
dove t
è il numero del caso da risolvere (a partire da ) e il valore x
è il massimo punteggio che Tip-Tap può ottenere in quel caso. Per esempio, le risposte ai tre casi descritti prima si indicano così:
Output:
Case #1: 13
Case #2: 15
Case #3: 20