统计回文
统计回文
/*
2022年09月10日 11:35:10
遍历str1的位置,挨个插入str2,并判断是否为回文串
注意拷贝一份str1,而不能直接修改str1
*/
#include <iostream>
#include <string>
using namespace std;
bool IsPalindrome(string& s){
int begin = 0, end = s.size()-1;
while(begin < end){
if(s[begin] != s[end])
return false;
++begin, --end;
}
return true;
}
int main()
{
string str1, str2;
cin >> str1 >> str2;
// str1的最后也要能够插入
int count = 0;
for(int i = 0; i <= str1.size(); ++i)
{
string tmp(str1);
tmp.insert(i, str2);
if(IsPalindrome(tmp))
++count;
}
cout << count << endl;
return 0;
}
/*
2022年09月10日 11:40:42
遍历str1的位置,挨个插入str2,并判断是否为回文串
注意拷贝一份str1,而不能直接修改str1
判断回文也可以翻转之后 直接比较字符串是否相等
*/
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
bool IsPalindrome(string& s){
string tmp = s;
reverse(s.begin(), s.end());
if(s == tmp)
return true;
else
return false;
}
int main()
{
string str1, str2;
cin >> str1 >> str2;
// str1的最后也要能够插入
int count = 0;
for(int i = 0; i <= str1.size(); ++i)
{
string tmp(str1);
tmp.insert(i, str2);
if(IsPalindrome(tmp))
++count;
}
cout << count << endl;
return 0;
}