У вас есть 2 проблемы:
Hackerrank представляет ваш ввод в виде одной строки:
'[[1, 0, 1], [0, 1, 0], [1, 0, 1]]'
не как целые числа sinlge с последующим возвратом.
Вы нужно взять одну строку, а затем разделить ее. Проще всего было бы literal_eval
создать полный список списков с помощью этой строковой записи.
from ast import literal_eval
inp = "[[1, 0, 1], [0, 1, 0], [1, 0, 1]]" # use input() here
l = literal_eval(inp)
print(l)
print(type(l))
, которая напечатает:
[[1, 0, 1], [0, 1, 0], [1, 0, 1]]
<class 'list'>
Ваш код не может быть запущен хорошо, как есть - это даст вам ошибку индекса:
Traceback (most recent call last):
File "whatever.py", line 5, in <module>
filter[k][j] = int(input())
IndexError: list index out of range
, потому что вы пытаетесь получить доступ к элементам вашего списка, которых еще нет :
filter = []
for k in range(3):
for j in range(3):
filter[k][j] = int(input())
filter
- пустой список, вы не можете получить доступ / индексировать в filter[0][0]
- вам нужно изменить его на
filter = []
for k in range(3):
# add a new empty list
filter.append([])
for j in range(3):
# add stuff to the last list of filter
filter[-1].append( int(input()) )