Count Ways to Make Array With Product LeetCode solution in Python
1class Solution:2def __init__(self):3self.dp = {}45def waysToFillArray(self, queries: List[List[int]]) -> List[int]:6mod = 10**9 + 778def dfs(n, val):9if (n, val) not in self.dp:10if n == 1:11return 112temp = 113for k in range(val // 2, 0, -1):14if val % k == 0:15temp += dfs(n - 1, val // k)16self.dp[n, val] = temp % mod17return self.dp[n, val]1819res = []20for n, val in queries:21res.append(dfs(n, val))22return res