社区讨论

70分求调,必关

B3843[GESP202306 三级] 密码合规参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@mm95jeln
此快照首次捕获于
2026/03/02 20:25
上周
此快照最后确认于
2026/03/02 20:27
上周
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int a,b,c1,c2,c3,c4;
string n;
struct hegui{
	string mm;
	int hg;
}m[13];
bool yxx(char x){
	if(x=='!' || x=='#' || x=='$'|| x=='@')return true;
	if(x>='A' && x<='Z')return true;
	if(x>='a' && x<='z')return true;
	if(x>='0' && x<='9')return true;
	return false;
}
int main()
{
	getline(cin,n);
	for(int i=0;i<n.size();i++){
		if(n[i]==',')a=a+1;
		else m[a].mm=m[a].mm+n[i];
	}
	for(int i=0;i<=a;i++){
		c1=0,c2=0,c3=0,c4=0;
		if(m[i].mm.size()>=6 && m[i].mm.size()<=12){
			for(int j=0;j<m[i].mm.size();j++){
				if(yxx(m[i].mm[j]==false)){
					c1=0,c2=0,c3=0,c4=0;
					break;
				}
				if(m[i].mm[j]=='!'||m[i].mm[j]=='@'||m[i].mm[j]=='#'||m[i].mm[j]=='$')c4=1;
				else if(m[i].mm[j]>='0' && m[i].mm[j]<='9')c1=1;
				else if(m[i].mm[j]>='A' && m[i].mm[j]<='Z')c2=1;
				else if(m[i].mm[j]>='a' && m[i].mm[j]<='z')c3=1;
			}
			if(c4==1 && c1+c2+c3>=2)m[i].hg=1;
		}
	}
	for(int i=0;i<=a;i++){
		if(m[i].hg==1)cout<<m[i].mm<<"\n";
	}
	return 0;
}

回复

0 条回复,欢迎继续交流。

正在加载回复...