Ein Fenster ist ein ASCII-artiges Quadrat mit einer ungeraden Seitenlänge von mindestens 3, einem einzelnen Zeichenrahmen am Rand sowie vertikalen und horizontalen Strichen in der Mitte:
#######
# # #
# # #
#######
# # #
# # #
#######
Ein MS-Fenster ist ein Fenster, in dem der Rahmen nur aus den Zeichen Mund besteht S. Ihre Aufgabe ist es, ein Programm (oder eine Funktion) zu schreiben, das eine Zeichenfolge verwendet und einen Wahrheitswert ausgibt, wenn die Eingabe ein gültiges MS Window ist, und einen Falsey-Wert, wenn dies nicht der Fall ist.
Spezifikationen
- Sie können die Eingabe als durch Zeilenumbrüche getrennte Zeichenfolge oder als ein Array von Zeichenfolgen für jede Zeile verwenden.
- Der Rand eines MS-Fensters kann eine Mischung aus M- und S-Zeichen enthalten, das Innere besteht jedoch immer aus Leerzeichen.
- Sie können auswählen, ob nur Fenster mit nachgestellten Zeilen oder nur Fenster ohne nachgestellte Zeilen erkannt werden sollen, jedoch nicht beide.
Testfälle
Wahrheit:
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