题解 | #牛的回文编号II#

牛的回文编号II

https://www.nowcoder.com/practice/0b576fd673834425878b99c736bb6c34

知识点

回文,字符串

思路

先写好判断字符串是否为回文字符串的函数,然后对x依次遍历,设计一个flag避免先导0,然后以'.'为分界,分别得到两边的字符串l与r,再同时判断两者是否都为回文串即可。

代码c++

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param x string字符串 
     * @return bool布尔型
     */
     int ishuiwen(string s)
     {
        for(int i=0,j=s.size()-1;i<j;i++,j--)
        {
            if(s[i]!=s[j])return 0;
        }
        return 1;
     }
    bool isPalindromeNumber(string x) {
        // write code here
        string l;
        string r;
        int t;
        bool flag=0;//避免先导0
        for(int i=0;;i++)
        {  if(x[i]!=0)flag=1;
            if(x[i]!='.'&&flag)l+=x[i];
            else if(x[i]=='.')
             {
              t=i;
              break;
             }; 

        }
        for(int i=t+1;i<x.size();i++)
        {
            if(x[i]!='.'&&x[i]!='0')r+=x[i];//避免后导0
        }
        if(ishuiwen(l)&&ishuiwen(r))return true;
        return false;
    }
};
全部评论

相关推荐

ArisRobert:统一解释一下,第4点的意思是,公司按需通知员工,没被通知到的员工是没法去上班的,所以只要没被通知到,就自动离职。就是一种比较抽象的裁员。
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务