描述
对于给定的由小写字母构成的字符串 s,求出其最长回文子串的长度。
子串为从原字符串中,连续的选择一段字符(可以全选、可以不选)得到的新字符串。
一个字符串被称作回文串,当且仅当这个字符串从左往右读和从右往左读是相同的。
输入描述:
在一行上输入一个长度为 1≦len(s)≦350、仅由小写字母构成的字符串 s。
输出描述:
输出一个整数,表示字符串 s 的最长回文子串的长度。
const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;
void (async function () {
// Write your code here
line = await readline();
let num = 1;
if (line.length < 2) return console.log(line.length);
for (let i = 0; i < line.length; i++) {
for (let j = 3; j <= line.length - i; j++) {
if (
line.slice(i, j) ===
line.slice(i, j).split("").reverse().join("")
) {
num =
line.slice(i, j).length > num
? line.slice(i, j).length
: num;
}
}
}
console.log(num);
})();