1 回答

TA貢獻(xiàn)1934條經(jīng)驗(yàn) 獲得超2個(gè)贊
錯(cuò)誤:
while(remaining > min && max > min) {
count++
max-=d
remaining -= max
}
最大值 > 最小值
當(dāng)您執(zhí)行此操作時(shí),您不是在比較當(dāng)前的最大值與最小值,而是在比較上一次操作的最大值與最小值。
此外,剩余的值應(yīng)始終大于最大值。
如果 max 大于 m,則您不能以 m 的成本購(gòu)買(mǎi)商品。
看一下下面的代碼,它通過(guò)了所有測(cè)試用例。
// Complete the how many games function below.
function howManyGames(p, d, m, s) {
// Return the number of games you can buy
if(s<p) return 0
let remaining = s
let max = p
let min = m
let count = 0
while(remaining > min && max > min && remaining > max) {
count++
remaining -= max
max-=d
}
if(max > m)
return count
return count + (m !== 0 ? Math.floor(remaining/m): 0)
}
添加回答
舉報(bào)