题解 | #密码验证合格程序#

密码验证合格程序

http://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841

实现条件3:不能有相同长度大于2的子串重复

  1. 不能有长度大于2的相同子串 = 排查每一个长度为3的子串
  2. for loop 的作用:从左手边红色方框一格一格移动至右边红色方框
  3. 确认子串后,从下一个位置开始寻找长度为3的相同子串
  4. 若找到返回false。若没找到成功走出for loop 并且返回true
    图片说明
bool determine2(string& s) 
{
    string str;
    for (int i = 0; i < s.size() - 3; i++) // 2.
    {
        str = s.substr(i, 3);
        if (s.find(str, i + 3) != s.npos) // 3.
        {
            return false;  // 4.
        }
    }
    return true; 
}
全部评论

相关推荐

牛客67381407...:我们学校华为是点击就送的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务