#+ANKI_DECK: study_deck_02 * TODO 0647. Palindromic Substrings :medium: :PROPERTIES: :NEETCODE: [[file:../../roadmap.org::*0647. Palindromic Substrings][0647. Palindromic Substrings]] :END: Given a string ~s~, return /the number of *palindromic substrings* in it/. A string is a *palindrome* when it reads the same backward as forward. A *substring* is a contiguous sequence of characters within the string. *Example 1:* #+begin_src Input: s = "abc" Output: 3 Explanation: Three palindromic strings: "a", "b", "c". #+end_src *Example 2:* #+begin_src Input: s = "aaa" Output: 6 Explanation: Six palindromic strings: "a", "a", "a", "aa", "aa", "aaa". #+end_src *Constraints:* - ~1 <= s.length <= 1000~ - ~s~ consists of lowercase English letters. ** TODO Approach Write your approach here. ** TODO Python #+begin_src python :lc-problem 647 :lc-lang python3 class Solution: def countSubstrings(self, s: str) -> int: #+end_src ** TODO C++ #+begin_src cpp :lc-problem 647 class Solution { public: int countSubstrings(string s) { } }; #+end_src