Appearance
647.回文子串
题解
js
/**
* @param {string} s
* @return {number}
*/
var countSubstrings = function (s) {
const dp = Array.from(Array(s.length), () => Array(s.length).fill(false));
let res = 0;
// 左指针
for (let i = s.length - 1; i >= 0; i--) {
// 右指针
for (let j = i; j < s.length; j++) {
// 中心 向左右两边扩散
if (s[i] === s[j]) {
if (j - i <= 1 || dp[i + 1][j - 1]) {
dp[i][j] = true;
res++;
}
}
}
}
return res;
};
/**
* @param {string} s
* @return {number}
*/
var countSubstrings = function (s) {
const dp = Array.from(Array(s.length), () => Array(s.length).fill(false));
let res = 0;
// 左指针
for (let i = s.length - 1; i >= 0; i--) {
// 右指针
for (let j = i; j < s.length; j++) {
// 中心 向左右两边扩散
if (s[i] === s[j]) {
if (j - i <= 1 || dp[i + 1][j - 1]) {
dp[i][j] = true;
res++;
}
}
}
}
return res;
};