Bei 3 Eingabeelementen, einer Liste von Koordinatenpaaren, einer 2D-Zeichenfolge und einer Einzelzeichenfolge wird ausgegeben, ob das Zeichen an jeder Koordinate der 2D-Zeichenfolge dem Einzelzeichen entspricht. Sie können die Eingabe in beliebiger Reihenfolge vornehmen und die Koordinaten können 1-indiziert sein.
Sie können die 2D-Zeichenfolge als 2D-Liste, Linienliste oder 2D-Zeichenfolge verwenden.
Beispiel: (0,0), "#_\n__", "#" -> True
Die Zeichenfolge ist
#_
__
Das Zeichen an der Koordinate (0,0)
(von oben links) ist #
. Dies entspricht dem dritten Eingabeelement #
, sodass Sie True
(oder einen beliebigen wahrheitsgemäßen Wert) ausgeben.
Beispiel: [(0,0), (1,1)], "#_\n_#", "#" -> True
Die Zeichenfolge ist
#_
_#
Die Zeichen an den Koordinaten von (0,0)
und (1,1)
sind beide #
, daher ist die Ausgabe wahr.
Die Ausgabe ist nur wahr, wenn jede Koordinate mit einem Hash übereinstimmt. Nicht jeder Hash muss jedoch eine passende Koordinate haben. Wenn das einzelne Zeichen ( #
in einigen Testfällen) in der 2D-Zeichenfolge nicht vorkommt, ist die Ausgabe immer noch nur falsch.
Sie können davon ausgehen, dass die Koordinaten immer innerhalb der Grenzen der 2D-Zeichenfolge liegen.
Weitere Testfälle: (Ich habe das einzelne Zeichen zur besseren Lesbarkeit an zweiter Stelle gesetzt.)
[(0,0), (2,1), (3,0)], #
#_##
#_##
True
[(0,0), (1,1), (3,0)], #
#_##
#_##
False (1,1 is not a hash)
[(1,1)], a
#a##
#a##
True
[(4, 0), (3, 0), (2, 0), (1, 0), (0, 0), (0, 1), (0, 2), (0, 3), (1, 3), (2, 3), (2, 2), (3, 2), (4, 2), (4, 3)], ' '
####
#
#
True
Beachten Sie, dass im letzten Testfall Leerzeichen als einzelne Zeichenfolge verwendet werden und die Leerzeichen mit Hashes versehen werden.
Verbunden. (Umkehrung dieser Herausforderung)
(row, column)
, im letzten Beispiel jedoch im Format (column, row)
.