Разбиения на различные множители. Не получается, помогите
Дано натуральное число N. Требуется найти число способов представить его в виде произведения попарно различных множителей больших 1.
Формат входных данных:
В первой строке содержится одно натуральное число 2 ≤ N ≤ 10^{12}
Формат выходных данных:
Вывести одно число - количество способов представить число N в виде произведения попарно различных множителей больших 1.
Пояснение к примеру. Имеется 7 различных способов представить число 48 в виде произведения (в том числе и вырожденного) попарно различных множителей больших 1 и 48, 2 и 24, 3 и 16, 4 и 12, 6 и 8, 2 3 8, 2 4 6.
Sample Input:
48
Sample Output:
7
пытался решить как то так, не работает, подскажите, что не так
def distinctfivisors(n,start, l:list):
global f
if n == 1:
f.append(l)
return
for i in range(start, n+1):
if n % i == 0:
distinctfivisors(n // i, i + 1, l + [i])
f = []
distinctfivisors(int(input()), 2, [])
print(len)