Учитывая, что массив целых чисел найдет число всех упорядоченных пар элементов в массиве, сумма которого лежит в заданном диапазоне [a, b]
Вот решение O (n ^ 2) для того же
'''
counts all pairs in array such that the
sum of pair lies in the range a and b
'''
def countpairs(array, a, b):
num_of_pairs = 0
for i in range(len(array)):
for j in range(i+1,len(array)):
total = array[i] + array[j]
if total >= a and total <= b:
num_of_pairs += 1
return num_of_pairs
Я знаю, что мое решение не оптимально Что является лучшим алгоритмом для этого.