Я был участником Codechef-SnackDown 2019. Это моя попытка решить этот вопрос:
TEAMMATE
def f1(L):
c=len(L)
if(c==2):
return 1
x=L.count(L[c-1])
if(x==1):
count=L.count(L[c-2])*f1(L[:c-2])
elif (x==c):
count=int(x*(x-1)/2)
else:
if(x%2==0):
count=int(x*(x-1)/2)*f1(L[:c-x])
else:
count=int(x*(x-1)/2)*f1(L[:c-x+1])
return count%1000000007
t=int(input())
for i in range(t):
n=int(input())
L =[int(x) for x in input().split()]
L.sort()
print(f1(L))
Я проверил этот код на наличиепримеры тестовых случаев, и он прошел. Но когда я запустил этот код с компилятором codechef, он выдал ошибку NZEC. Теперь, при исследовании NZEC в python, он сказал, что выдает NZEC, если ввод не выполнен правильно или индекс индекса выходит за пределы диапазона.При заданных ограничениях проблемы я не нашел случая, когда индекс списка выходит за пределы допустимого диапазона. Любая помощь будет принята с благодарностью.