Il campionato di football americano, Super Bowl 50 , si svolge oggi alle 23:30 UTC (e puoi vederlo dal vivo online ). Questa sfida è stata fatta per celebrarla.
In una partita di football americano, due squadre competono per ottenere il maggior numero di punti e ci sono sei modi per segnare questi punti. Daremo a ciascuno un'abbreviazione:
- Field goal -
FG
: 3 punti - Touchdown -
TD
: 6 punti - Punto extra -
XP
: 1 punto - Può essere segnato solo dopo un touchdown. - Conversione in due punti -
XD
(come un punto in più ma più felice): 2 punti - Può essere segnato solo dopo un touchdown. - Sicurezza -
S
: 2 punti - Fair catch calcio -
FCK
: 3 punti (un gioco molto raro)
Scrivi un programma o una funzione che accetta una stringa a riga singola contenente solo queste sei abbreviazioni, sia in maiuscolo che in minuscolo.
Questa stringa rappresenta tutti gli eventi di punteggio in una partita (o parte di una partita) del calcio, con i termini maiuscoli appartenenti a una squadra e quelli minuscoli appartenenti all'altra.
Il tuo compito è quello di riportare i punteggi finali del gioco e indicare chi ha vinto con l'output del modulo
[score 1] [to] [score 2]
dove:
[score 1]
è sempre il più grande dei due punteggi (se non uguale), indipendentemente dal fatto che sia maiuscolo o minuscolo vinto.[score 2]
è il più piccolo dei due punteggi (se non uguale).[to]
èTO
se la squadra maiuscola ha vinto,to
se la squadra minuscola ha vinto eTo
se è un pareggio.
Esempio: tutti gli eventi di punteggio in Super Bowl XLIX potrebbero essere riassunti dalla stringa
TDXPtdxpTDXPtdxpfgtdxpTDXPTDXP
dove i caratteri maiuscoli sono i New England Patriots e i caratteri minuscoli sono i Seattle Seahawks . I Patriots hanno segnato 28 e gli Hawks 24, quindi l'output sarebbe:
28 TO 24
Appunti
- Il tuo programma / funzione deve supportare qualsiasi input arbitrario, inclusa la stringa vuota.
XP
eXD
si verificherà solo dopoTD
.xp
exd
si verificherà solo dopotd
.- Non si può presumere che la stringa di input inizi o termini in un determinato caso.
- Una sola nuova riga finale è facoltativamente consentita sia in input che in output
punteggio
Vince il codice più breve in byte. Le risposte postate prima del calcio d'inizio ( troppo tardi ora! ) Del Super Bowl 50 possono prevedere la squadra vincente ( Panthers o Broncos ) e, se sono corrette, ottenere un bonus di byte del -10%!
(Verificherò la cronologia delle revisioni per assicurarmi che le previsioni non siano cambiate e siano state realmente fatte prima del calcio d'inizio.)
Casi test
[empty string] -> 0 To 0
TDXPtdxpTDXPtdxpfgtdxpTDXPTDXP -> 28 TO 24
FG -> 3 TO 0
fg -> 3 to 0
TD -> 6 TO 0
td -> 6 to 0
TDXP -> 7 TO 0
tdxp -> 7 to 0
TDXD -> 8 TO 0
tdxd -> 8 to 0
S -> 2 TO 0
s -> 2 to 0
FCK -> 3 TO 0
fck -> 3 to 0
TDTDXDSssFCKfgfckFGtd -> 22 TO 16
fcksFCKS -> 5 To 5
tdtdtdtdxp -> 25 to 0
SSSSSSSTD -> 20 TO 0
fgSfckFGfgtdxptdxdTDs -> 26 to 11
FGTDXPtdxdtdsStdxpfgTDfckTDXDFCK -> 29 To 29