码迷,mamicode.com
首页 > 其他好文 > 详细

647. Palindromic Substrings

时间:2017-12-15 13:29:21      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:sub   substr   substring   ons   task   bre   mic   input   put   

Given a string, your task is to count how many palindromic substrings in this string.

The substrings with different start indexes or end indexes are counted as different substrings even they consist of same characters. 

Example 1:

Input: "abc"
Output: 3
Explanation: Three palindromic strings: "a", "b", "c".

 

Example 2:

Input: "aaa"
Output: 6
Explanation: Six palindromic strings: "a", "a", "a", "aa", "aa", "aaa".

class Solution {
public:
    int countSubstrings(string s) {
        int cnt = 0;
        int n = s.size();
        for(int i = 0;i<s.size();i++)
        {
            cnt +=count_palindromic(s,i,i);
            cnt += count_palindromic(s,i,i+1);
        }
        return cnt;
    }
private:
    int count_palindromic(string s,int left,int right)
    {
        int cnt = 0;
        while(left>=0&&right<s.size())
        {
            if(s[left]==s[right])
            {
                cnt++;
                left--;
                right++;
            }
            else
                break;
        }
        return cnt;
    }
};

 

647. Palindromic Substrings

标签:sub   substr   substring   ons   task   bre   mic   input   put   

原文地址:http://www.cnblogs.com/jxr041100/p/8042394.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!