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

密码验证合格程序

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

#include <stdio.h>

int main()
{
    char str[50] = {'0'};
    
    start:
    while((scanf("%s",&str)) != EOF)
    {
        int len = strlen(str);
        if(len <= 8)
            printf("NG\n");
        else
        {
            int dp[4] = {0};
            for(int i=0;i<len;i++)
            {
                if((str[i] >= 'a') && (str[i] <= 'z'))
                {
                    dp[0] = 1;
                }
                else if((str[i] >= 'A') && (str[i] <= 'Z'))
                {
                    dp[1] = 1;
                }
                else if((str[i] >= '0') && (str[i] <= '9'))
                {
                    dp[2] = 1;
                }
                else
                {
                    dp[3] = 1;
                }
            }
            if(dp[0]+dp[1]+dp[2]+dp[3] < 3)
            {
                printf("NG\n");
            }
            else
            {
                for(int i=0;i<len-2;i++)
                {
                    for(int j=i+3;j<len-2;j++)
                    {
                        if((str[i] == str[j]) && (str[i+1] == str[j+1]) && (str[i+2] == str[j+2]))
                        {
                            printf("NG\n");
                            goto start;
                        }
                    }
                }
                
                printf("OK\n");
            }
            
            
        }
    }
    
    return 0;
}

全部评论

相关推荐

07-10 14:08
已编辑
江西农业大学 Java
念旧select:做完把项目放到自己硬盘里给他看,看完拷走
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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