代码
#include <bits/stdc++.h>
using namespace std;
#define maxsize 1000
//只想得到暴力解法:遍历,数据结构:方便逆序,栈
//i,j遍历所有子串,对子串,先进栈,再出栈,比较前后子串是否相等,相等结果加1
int countSubstrings(string s)
{
int n = s.size();
int num=0;
for(int i=0;i<n;i++)
{
for(int j=0;j<=1;j++)
{
int l=i;
int r=i+j;
while(l>=0 && r<n && s[l]==s[r])
{
num++;
l--;
r++;
}
}
}
return num;
}
int main()
{
//输入字符串
string s1;
getline(cin, s1);
cout<<countSubstrings(s1)<<endl;
return 0;
}
class Solution {
public:
int countSubstrings(string s)
{
int n = s.size();
int num=0;
for(int i=0;i<n;i++)
{
for(int j=0;j<=1;j++)
{
int l=i;
int r=i+j;
while(l>=0 && r<n && s[l]==s[r])
{
num++;
l--;
r++;
}
}
}
return num;
}
};
结果
通过