题解 | #密码验证合格程序#
密码验证合格程序
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; }