Una finestra è un quadrato di arte ASCII con una lunghezza del lato dispari di almeno 3, con un bordo a singolo carattere attorno al bordo e tratti verticali e orizzontali nel mezzo:
#######
# # #
# # #
#######
# # #
# # #
#######
Una finestra MS è una finestra in cui il bordo è composto solo da caratteri M
e S
. Il tuo compito è scrivere un programma (o una funzione) che accetta una stringa e genera un valore di verità se l'input è una MS Window valida e un valore di falsa se non lo è.
specificazioni
- È possibile prendere l'input come una stringa separata da una nuova riga o una matrice di stringhe che rappresentano ciascuna riga.
- Il bordo di una finestra MS può contenere un mix di caratteri M e S, ma l'interno sarà sempre composto da spazi.
- Puoi scegliere di rilevare solo le finestre con nuove righe finali o solo le finestre senza nuove righe, ma non entrambe.
Casi test
Truthy:
MMM
MMM
MMM
SMSMS
M M S
SMSMM
S S M
SMSMS
MMMMMMM
M S M
M S M
MSSSSSM
M S M
M S M
MMMMMMM
Falsey:
Hello, World!
MMMM
MSSM
MS M
MMMM
MMSMM
M S.M
sSSSS
M S M
MMSMM
MMMMMMM
M M M
MMMMMMM
M M M
MMMMMMM
MMMMMMM
M M M M
MMMMMMM
M M M M
MMMMMMM
M M M M
MMMMMMM
MMSSMSSMM
M M M
S S S
S S S
MMSSMSSMM
S S S
S S S
M M M
MMSSMSSMM