+ 5

Need help in a hackerrank problem.

Only 9/15 cases pass in this code. Can anyone help me finding the solution. Question :- www.hackerrank.com/challenges/crush/problem Mycode :- https://code.sololearn.com/cbgMsh6VP8Yi/?ref=app

21st Mar 2020, 3:01 PM
Manoj
Manoj - avatar
1 Resposta
+ 2
Ваш код работает очень долго и не успевает завершится в заданное время. создает огромный массив и складывает С со всеми элементы в заданном диапазоне (А,B). Функция max() тоже очень медленная. Новый код складывает только С с числом в позиции А и вычитает из числа в позиции B+1. Не знаю как но такой алгоритм работает. Источник https://stackoverflow.com/questions/52357594/array-manipulation-hackerrank-runtime-error-issue/52358308 num=input().split(" ") num=[int(i) for i in num] n=num[0] t=num[1] d = {} for i in range(t): g=input().split(" ") g=[int(j) for j in g] a=g[0] b=g[1] c=g[2] d.setdefault(a,0) d[a]=d[a]+c d.setdefault(b+1,0) d[b+1]=d[b+1]-c maximum = 0 summa= 0 for i in sorted(d): summa+=d[i] if(maximum<summa): maximum=summa print(maximum)
21st Mar 2020, 6:27 PM
Владислав Шарошкин
Владислав Шарошкин - avatar