Я написал некоторый код для решения проблемы, но, к сожалению, проблема имеет ограничение по времени (1 секунда), и моя программа не может решить ее в течение 1 секунды. Что-нибудь нужно сделать, чтобы сделать это быстрее? Это тест, который имеет некоторые события (q) и несколько массивов (n). Формат первого ввода 'nq', чтобы определить n и q. Тогда у нас есть «q» других входных данных в качестве одного из этих двух форматов: 1) «1 f»: добавляет число «f» ко всем массивам 2) «2 de»: удаляет первые «e» числа «d»Массив th Вывод программы должен быть суммой удаленных чисел для каждого события удаления. Когда мой код будет скомпилирован на этом сайте, появится сообщение «Превышен лимит времени». Может быть, есть другой способ ответить на этот вопрос. Мне просто интересно об этом.
def inputs():
x = input()
y = x.split()
return y
def main():
b = inputs() # get two numbers with a space between them
n = int(b[0])
q = int(b[1])
t = []
l = 0
obj = [[] for j in range(n)]
for i in range(q) :
b = inputs() # get two or three numbers
ib0 = int(b[0])
ib1 = int(b[1])
if ib0 == 1 :
for j in range(n) :
obj[j].append(ib1)
if ib0 == 2 :
ib2 = int(b[2])
t.append(0)
for k in range(0,ib2) :
t[l] += obj[ib1-1][k]
l = l + 1
del obj[ib1-1][:ib2]
b.clear()
for m in range(l):
print(t[m])
if __name__ == '__main__' :
main()