You are viewing a single comment's thread. Return to all comments →
Javascript O(n^2)
function truckTour(petrolpumps) { for (let i = 0; i < petrolpumps.length; i++) { let [amount, distance] = petrolpumps[i] for (let cur = i; amount >= distance; cur++) { if (cur == i + petrolpumps.length) return i let [nextAmount, nextDistance] = petrolpumps[(cur + 1) % petrolpumps.length] amount = amount - distance + nextAmount distance = nextDistance } } }
O(n)
function truckTour(petrolpumps) { let curAmount = 0, start = 0 for (let i = 0; i < petrolpumps.length; i++) { let [amount, distance] = petrolpumps[i] curAmount += amount - distance if (curAmount < 0) { start = i + 1 curAmount = 0 } } return start }
Seems like cookies are disabled on this browser, please enable them to open this website
Truck Tour
You are viewing a single comment's thread. Return to all comments →
Javascript O(n^2)
O(n)