Поэтому я решил заняться соревновательным программированием на CodeChef. Я видел проблему, чтобы попытаться. Но я продолжаю получать ошибку времени выполнения (NZEC), и я не знаю, почему, поскольку я думал, что эта ошибка возникает только тогда, когда я вызываю элементы связанного массива и бесконечные циклы, которые занимают слишком много памяти.
Задача
1.) Получить 2 входа A и B
2.) Границы: 1 ≤ B ‹ A ≤ 10000
3.) Затем я делаю A-B и изменить одну цифру ответа
4.) Затем я возвращаю его
Примечание. Ограничение по времени составляет 1 секунду, максимальный размер исходного кода 50 000 байт.
e.g
input A >> 95
input B >> 50
output >> 35
Фактический ответ 45, но мы должны изменить одну цифру ответа
Так что это было мое решение
from random import randint
test1 = True
test2 = True
while test1:
A = int(input("Enter a number: "))
if (A>=1) and (A<=10000):
test1 = False
else:
print("Number must be greater or equal to 1 and less than or equalts to 10,000")
while test2:
B = int(input("Enter a second number: "))
if (B>=1) and (B<=10000) and (B<A):
test2 = False
else:
print("Number must follow rules as above BUT must be less than your first")
solution = str(A-B)
range1 = randint(0, len(solution)-1)
range2 = randint(0,9)
replacement = list(range(0,10))
new_solution = solution.replace(solution[range1], str(replacement[range2]))
print(new_solution)