var gridGame = function (grid) {
const n = grid[0].length
const prefixTop = Array.from({ length: n + 1 }).fill(0)
const prefixBottom = Array.from({ length: n + 1 }).fill(0)
for (let i = 0; i < n; i++) {
prefixTop[i + 1] = prefixTop[i] + grid[0][i]
prefixBottom[i + 1] = prefixBottom[i] + grid[1][i]
}
let result = Infinity
for (let i = 0; i < n; i++) {
const topRemain = prefixTop[n] - prefixTop[i + 1]
const bottomCollect = prefixBottom[i]
const secondRobotPoints = Math.max(topRemain, bottomCollect)
result = Math.min(result, secondRobotPoints)
}
return result
}
var gridGame = function (grid) {
let t = grid[0].reduce((acc, curr) => (acc += curr), 0)
console.log("t", t)
let d = 0
let res = Number.MAX_SAFE_INTEGER
for (let i = 0; i < grid[0].length; i++) {
t = t - grid[0][i]
res = Math.min(res, Math.max(t, d))
d += grid[1][i]
}
return res
}
console.log(
gridGame([
[2, 5, 4],
[1, 5, 1],
]),
)