题目链接:NOJ2101
类型:模拟水题
AC代码:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
// freopen("in.txt", "r+", stdin);
// freopen("out.txt", "w", stdout);
char s[1000];
while(gets(s)) {
int len = strlen(s);
if(len < 8) {
printf("you are thrown out of server!\n");
continue;
}
int flag1 = 0, flag2 = 0, flag3 = 0, flag4 = 0;
for(int i = 0; i < len; ++i) {
if(s[i] >= 'A' && s[i] <= 'Z') {
flag1 = 1;
continue;
}
else if(s[i] >= 'a' && s[i] <= 'z') {
flag2 = 1;
continue;
}
else if(s[i] >= '0' && s[i] <= '9') {
flag3 = 1;
continue;
}
else flag4 = 1;
}
int ans = flag1 + flag2 + flag3 + flag4;
if(ans == 1) {
int num = 0;
char s2[1000];
for(int i = 0; i < len; ++i) {
bool flag = false;
for(int j = 0; j < num; ++j)
if(s[i] == s2[j])
flag = true;
if(!flag)
s2[num++] = s[i];
}
if(num <= 4) {
printf("you are thrown out of server!\n");
continue;
}
else {
printf("std::weak is laughing!\n");
continue;
}
}
if(ans == 2 || ans == 3) {
int num = 0;
char s2[1000];
for(int i = 0; i < len; ++i) {
bool flag = false;
for(int j = 0; j < num; ++j)
if(s[i] == s2[j])
flag = true;
if(!flag)
s2[num++] = s[i];
}
if(num <= 4) {
printf("you are thrown out of server!\n");
continue;
}
printf("33luo can crack this!\n");
continue;
}
if(ans == 4) {
int num = 0;
char s2[1000];
for(int i = 0; i < len; ++i) {
bool flag = false;
for(int j = 0; j < num; ++j)
if(s[i] == s2[j])
flag = true;
if(!flag)
s2[num++] = s[i];
}
if(num <= 4) {
printf("you are thrown out of server!\n");
continue;
}
if(len < 13) {
printf("33luo can crack this!\n");
continue;
}
else {
printf("NSA is unhappy!\n");
continue;
}
}
}
return 0;
}