B3843 [GESP202306 三级] 密码合规不会写啊啊啊
  • 板块灌水区
  • 楼主liaoruiheng
  • 当前回复3
  • 已保存回复4
  • 发布时间2024/10/20 19:42
  • 上次更新2024/10/20 21:02:34
查看原帖
B3843 [GESP202306 三级] 密码合规不会写啊啊啊
1087408
liaoruiheng楼主2024/10/20 19:42

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@! 输出:

,,,,,,,,
,,,,,,,,,,,
2024/10/20 19:42
加载中...