https://www.geeksforgeeks.org/maximum-product-subset-array/