题解 | #密码验证合格程序#
密码验证合格程序
https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841
#include <stdio.h> int main() { char a[100]; while (scanf("%s", a) != EOF) { int num, i, j, x=0, y=0, z=0, w=0, cnt = 0, flag = 0; //printf("%s\n", a); //printf("%d\n", strlen(a)); if(strlen(a) < 9) { printf("NG\n"); continue; } num = strlen(a); for(i = 0; i< num; i++) { if(a[i] <='z' && a[i] >= 'a') { if(0 == x) { cnt++; } x++; } else if(a[i] <='Z' && a[i] >= 'A') { if(0 == y) { cnt++; } y++; } else if(a[i] <='9' && a[i] >= '0') { if(0 == z) { cnt++; } z++; } else if(a[i] == ' ' || a[i] == '\n') { printf("NG\n"); continue; } else { if(0 == w) { cnt++; } w++; } } //printf("%d,%d,%d,%d\n",x,y,z,w); if(cnt < 3) { printf("NG\n"); continue; } for(i = 0; i < num - 3; i++) { for(j = i + 2; j < num - 2; j++) { if(a[i] == a[j] && a[i + 1] == a[j + 1] && a[i + 2] == a[j + 2]) { //printf("a[%d]=%d,a[%d]=%d\n", i, a[i], j, a[j]); printf("NG\n"); flag = 1; break; } } if(flag) { break; } } if(flag == 0) printf("OK\n"); } return 0; }