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

密码验证合格程序

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

int checksame(int*a,int n)
{
    char arr[3]={0};
    char*str=a;
    for(int i=0;i<n;i++)
    {
        strncpy(arr,str,3);
        char*pos=a;
        for(int j=0;j<n-3;j++)
        {
            if(j!=i && strncmp(arr,pos,3)==0)
                return 1;
            pos++;
        }
        str++;
    }
    return 0;
}

int judge(char*a,int len)
{
    int count=0;
    if(len<=8)
        return 0;
    int x=0,y=0,b=0,c=0;
    for(int i=0;i<len;i++)
    {
        if(isdigit(a[i]))
            x=1;
        else if(isupper(a[i]))
            b=1;
        else if(islower(a[i]))
            c=1;
        else
            y=1;
    }
    if(x+y+b+c<3)
        return 0;
    if(checksame(a,len))
        return 0;
    
    return 1;
}

int main()
{
    char arr[101]={0};
    while(scanf("%s",arr) !=EOF)
    {
        int len=strlen(arr);
        if(judge(arr,len))
            printf("OK\n");
        else
            printf("NG\n");
    }
    return 0;
}

全部评论

相关推荐

点赞 评论 收藏
分享
绝迹的星:前端和后端写两份简历, 如果想干全栈就直接写求职意向为全栈工程师
点赞 评论 收藏
分享
程序员小白条:主要没亮点,项目也是网上的,平平无奇,那只能海投了,奖项总得有一些,然后就是现在最好是前后端都会,自己能做项目并且运维的,要么找星球项目改改,要么找个开源项目改改,自己能拓展功能才是主要的,跟做效率很低很低
点赞 评论 收藏
分享
苍蓝星上艾露:这简历。。。可以试试我写的开源简历优化工具https://github.com/weicanie/prisma-ai
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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