博客
关于我
9.统计回文
阅读量:122 次
发布时间:2019-02-27

本文共 1195 字,大约阅读时间需要 3 分钟。

为了解决这个问题,我们需要找到将字符串B插入字符串A的所有可能位置,使得插入后的字符串是一个回文串。回文串是指正读和反读都一样的字符串。

方法思路

  • 回文判断函数:首先,我们需要一个函数来判断一个字符串是否是回文串。这个函数从字符串的两端同时开始比较字符,直到中间位置。
  • 遍历插入位置:对于每个可能的位置,将字符串B插入到字符串A的位置,然后检查插入后的字符串是否是回文。
  • 处理特殊情况:如果字符串B为空,那么插入后的字符串就是原来的字符串A。如果A是回文,那么方法数是A的长度加1,否则为0。
  • 解决代码

    #include 
    #include
    using namespace std;bool IsCircle(const 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; getline(cin, str1); getline(cin, str2); if (str2.empty()) { if (IsCircle(str1)) { cout << str1.size() + 1 << endl; } else { cout << 0 << endl; } return 0; } int count = 0; for (int i = 0; i <= str1.size(); i++) { string temp = str1; temp.insert(i, str2); if (IsCircle(temp)) { count++; } } cout << count << endl; return 0;}

    代码解释

  • IsCircle函数:这个函数检查字符串是否是回文。从字符串两端开始,逐步向中间比较字符,直到两端相遇。
  • 读取输入:从标准输入读取字符串A和B。
  • 处理空字符串B:如果B为空,检查A是否是回文,如果是,输出A的长度加1,否则输出0。
  • 遍历插入位置:对于每个可能的位置插入B,生成新字符串并检查是否是回文,统计符合条件的情况。
  • 输出结果:输出满足条件的插入方法数。
  • 转载地址:http://jpbb.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现将彩色图像转换为负片算法(附完整源码)
    查看>>
    Objective-C实现将无符号整数n变成成d进制表示的字符串s(附完整源码)
    查看>>
    Objective-C实现将给定的 utf-8 字符串编码为 base-16算法(附完整源码)
    查看>>
    Objective-C实现将给定的字符串编码为 base32算法(附完整源码)
    查看>>
    Objective-C实现小根堆(附完整源码)
    查看>>
    Objective-C实现局域网双向通信(附完整源码)
    查看>>
    Objective-C实现局部最大值点数算法(附完整源码)
    查看>>
    Objective-C实现屏幕捕获功能( 附完整源码)
    查看>>
    Objective-C实现峰值信噪比算法(附完整源码)
    查看>>
    Objective-C实现已线段的形式求曲线长算法(附完整源码)
    查看>>
    Objective-C实现已递归的方式找到一个数字数组的最大值算法(附完整源码)
    查看>>
    Objective-C实现巴比伦平方根算法(附完整源码)
    查看>>
    Objective-C实现巴特沃斯过滤器算法(附完整源码)
    查看>>
    Objective-C实现布赖恩·克尼汉法算法(附完整源码)
    查看>>
    Objective-C实现希尔密码算法(附完整源码)
    查看>>
    Objective-C实现帕斯卡三角形算法(递归方式)(附完整源码)
    查看>>
    Objective-C实现带头双向循环链表(附完整源码)
    查看>>
    Objective-C实现带有双向链表的堆栈算法(附完整源码)
    查看>>
    Objective-C实现幂级数(附完整源码)
    查看>>
    Objective-C实现广义表(附完整源码)
    查看>>