function findMax(left, right, str) { while (str[left] === str[right]) { if (!str[left] || !str[right]) { break } left-- right++ } return right - left - 1 } function resolve(str) { let left = 0 let right = 0 let max = 1 for (let i = 0; i < str.length; i++) { left = i right = i + 1 max = Math.max(findMax(left, right, str), max) left = i - 1 right = i + 1 max = Math.max(findMax(left, right, str), max) } return max } const res = resolve('abac') console.log(res)