B3843 [GESP202306 三级] 密码合规
这密码题怎么写啊
#include<bits/stdc++.h>
using namespace std;
int main() {
char s[105];
cin>>s;
int n=strlen(s);
int f1=0,f2=0,f3=0,f4=0,c=0,fa=0;
for (int i=0;i<n;i++) {
if(s[i]>='A'&&s[i]<='Z') {
f1=1;
c++;
} else if(s[i]>='a'&&s[i]<='z') {
f2=1;
c++;
} else if(s[i]>='0'&&s[i]<='9') {
f3=1;
c++;
} else if(s[i]=='!'||s[i]=='@'||s[i]=='#'||s[i]=='$') {
f4=1;
c++;
} else if(s[i]==',') {
if(fa==0&&f1+f2+f3>=2&&f4==1&&c>=6&&c<=12) {
for (int j=i-c;j<i;j++)cout<<s[j];
cout<<endl;
}
f1=0,f2=0,f3=0,f4=0,c=0,fa=0;
} else {
fa=1;
}
}
if(fa==0&&f1+f2+f3>=2&&f4==1&&c>=6&&c<=12) {
for(int j=n-c;j<n;j++)cout<<s[i];
}
return 0;
}
输入:seHJ12!@,sjdkffH$123,sdf!@&12HDHa!,123&^YUhg@!
输出:
,,,,,,,,
,,,,,,,,,,,