 # Interesting Pairs (DIVPAIRS), Starters 13 (26 sep)

I tried this solution but idk why it’s failing test cases. Can anyone look it up?

``````import math
import os
import collections
from itertools import permutations, combinations

for _ in range(int(input())):
n = int(input())
arr = list(map(int, input().split()))
c = combinations(arr, 2)
count = 0
for a,b in tuple(c):
prod = a*b
den = (arr.index(a)+1) * (arr.index(b)+1)
if prod%den == 0:
count += 1

print(count)
``````

Even I considered the possibility of duplicate elements and modified the above code as follows:

``````import math
import os
import collections
from itertools import permutations, combinations

for _ in range(int(input())):
n = int(input())
arr = list(map(int, input().split()))
c = combinations(arr, 2)
count = 0
index = list((i+1,j+1) for ((i,_),(j,_)) in combinations(enumerate(arr), 2))
values = list(k for k in combinations(arr,2))

for x,y in zip(values, index):
if (x*x) % (y*y) == 0:
count += 1

print(count)

``````

This code is passing a few test cases but showing Runtime error for rest of them.
Can anyone suggest modifications or is my code completely wrong?

1 Like