| 12345678910111213141516171819202122 | func nthSuperUglyNumber(n int, primes []int) int {	ugly := []int{1}	k := len(primes)	index, product := make([]int, k), make([]int, k)	copy(product, primes)	for i := 1; i < n; i++ {		idx, min := 0, product[0]		for j := 0; j < k; j++ {			if product[j] == ugly[i-1] {				index[j]++				product[j] = ugly[index[j]] * primes[j]			}			if product[j] < min {				idx, min = j, product[j]			}		}		ugly = append(ugly, min)		index[idx]++		product[idx] = ugly[index[idx]] * primes[idx]	}	return ugly[n-1]}
 |