Имея 3 входных элемента, список пар координат, 2D-строку и односимвольную строку, выведите, равен ли символ в каждой координате 2D-строки одному символу. Вы можете принимать входные данные в любом порядке, а координаты могут быть проиндексированы на 1.
Вы можете взять 2D-строку как 2D-список, список строк или 2D-строку.
Пример: (0,0), "#_\n__", "#" -> True
Строка
#_
__
Символ в координате (0,0)
(слева вверху) есть #
. Это равно третьему элементу ввода #
, поэтому вы True
выводите (или любое истинное значение)
Пример: [(0,0), (1,1)], "#_\n_#", "#" -> True
Строка
#_
_#
Символы в координатах (0,0)
и (1,1)
оба являются одинаковыми #
, поэтому вывод соответствует действительности.
Выходные данные верны только тогда, когда каждая координата соответствует хешу. Не каждый хеш должен иметь совпадающую координату. Если #
в двумерной строке нет вхождений одного символа ( в некоторых тестовых случаях), результат все равно будет ложным.
Вы можете предположить, что координаты всегда будут в пределах 2D-строки.
Больше тестов: (я помещаю один символ в секунду для удобства чтения)
[(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
Обратите внимание, что в последнем тесте в качестве единственной строки символов используются пробелы и хэшируются вокруг пробелов.
Связанные с. (обратная задача)
(row, column)
но в последнем примере координаты в формате (column, row)
.