这是一道简单题
我们只需要简单用两层遍历,在内层遍历找到第一个比外层遍历元素小的价格并将其相减就行,详见代码
/**
* @param {number[]} prices
* @return {number[]}
*/
var finalPrices = function (prices) {
const res = [...prices]
for (let i = 0; i < prices.length; i++) {
for (let j = i + 1; j < prices.length; j++) {
if (prices[j] <= res[i]) {
res[i] -= prices[j]
break;
}
}
}
return res
};