源代码:
#include <bits/stdc++.h>
using namespace std;
int main(){
string s;
cin >> s;
s+=",";
int cnt=0;
int x=0;
int d=0;
int n=0;
int z=0;
string t="";
int ans=0;
bool a=1,b=1,c=1;
for(int i=0;s[i];i++){
if(s[i]!=','){
t+=s[i];
cnt++;
if('a'<=s[i]&&s[i]<='z'){
x++;
if(a){
ans++;
a=0;
}
}else if('A'<=s[i]&&s[i]<='Z'){
d++;
if(b){
ans++;
b=0;
}
}else if('0'<=s[i]&&s[i]<='9'){
n++;
if(c){
ans++;
c=0;
}
}else if(s[i]=='!'||s[i]=='@'||s[i]=='#'||s[i]=='$'){
z++;
}else{
cnt=0;
x=0;
d=0;
n=0;
z=0;
t="";
ans=0;
a=1;
b=1;
c=1;
continue;
}
}else{
if(cnt>=6&&cnt<=12&&z>0&&ans>=2){
cout << t << endl;
}
cnt=0;
x=0;
d=0;
n=0;
z=0;
t="";
ans=0;
a=1;
b=1;
c=1;
}
}
return 0;
}
Hack数据输入:
输入样例:
123@456$,ABcd12,Ab!1$
预期正确输出:
Ab!1$