• 回文串


    题目来源:【赛码】字符串练习

    题目描述:
    给定一个字符串,问是否能够通过添加一个字母将其变成“回文串”。 “回文串”是指正着和反着读都一样的字符串。如:”aa”,”bob”,”testset”是回文串,”alice”,”time”都不是回文串。

    输入描述
    一行一个有小写字母构成的字符串,字符串长度不超过10。

    输出描述
    如果输入字符串可以通过添加一个字符,则输出”YES”,否则输出”NO”。

    样例输入
    coco
    样例输出
    Yes

    题解:
    1.如果一个字符串能通过添加一个字母变成回文串,那么它去掉一个字母也就可以变成回文串,遍历删除一位字符,若能得到回文串则满足,否则添加一个字符也不能变成回文串。

    
    let str = read_line();
    function ishuiwen(str)
    {
      for(let i = 0; i < str.length / 2; i++)
      {
        if(str[i] != str[str.length - i - 1])
            return false;
        else
          return true;
      }
    }
    
    let flag = false;
    if(ishuiwen(str) === true)
      print("Yes");
    else
      {
        for(let i = 0; i < str.length; i++)
          {
            if(ishuiwen(str.substr(0, i) + str.substr(i + 1)))
                flag = true; 
          }
        if(flag)
          print("Yes");
        else
          print("No");
      }
    
    
  • 相关阅读:
    进程空间与系统空间(一)
    内核之最
    Linux 内核3.10.5 专场
    device_create与device_register
    重写与重载的含义
    抽象类和接口的区别
    Spring知识点
    mybatis学习
    知识点
    Mybatis面试题
  • 原文地址:https://www.cnblogs.com/ZigHello/p/16092934.html
Copyright © 2020-2023  润新知