不能用这个变成数组再reverse的方法判断是否回文,时间会爆炸
const line = readline() const length = line.length // function isReverse( str ) { // const reverseStr = str.split("").reverse().join("") // if( reverseStr === str ) { // return true // }else { // return false // } // } function isReverse( str ) { let l, r, strLength = str.length; if( strLength % 2 === 0 ) { l = strLength / 2 - 1 r = strLength / 2 }else { l = (strLength - 1) / 2 r = l } while( l >= 0 && r <= strLength - 1 ) { if( str[l] === str[r] ) { l-- r++ }else { return false } } return true } let max = 0 for( let i = 0; i < length; i++ ) { for( let j = 0; j <= i; j++ ) { const str = line.slice(j, i + 1) if( isReverse( str ) ) { max = Math.max(max, str.length); } } } console.log( max )