求大佬解答,为啥只有50分
查看原帖
求大佬解答,为啥只有50分
654012
houlaoshi楼主2025/6/18 19:32
#include <bits/stdc++.h>
using namespace std;
int main()
{
	string a,b = "";
	int l,flag;
	cin >> a;
	for( int i = 0; i < a.size(); i++ )
	{
		if( a[i] != ',' )
		{
			b += a[i];
			if( i != a.size()-1 ) continue;//最后一个密码后面没有逗号 
		}
		//cout << b << endl;
		flag = 0;
		if( b.size() >= 6 && b.size() <= 12 ) l = 1;
		else l = 0;
		//cout << l << endl;
		if( l == 0 )
		{
			b = "";
			continue;
		}
		int xz=0,dz=0,sz=0,f=0;
		for( int j = 0; j < b.size(); j++ )
		{
			if( b[j]>='a'&&b[j]<='z' ) xz = 1;
			else if( b[j]>='A'&&b[j]<='Z' ) dz = 1;
			else if( b[j]>='0'&&b[j]<='9' ) sz = 1;
			else if( b[j]=='!'||b[j]=='@'||b[j]=='#'||b[j]=='$' ) f = 1;
			else
			{
				flag = 1; 
				break;
			}
		}
		//cout << xz << " " << dz << " " << sz << " " << f << endl;
		if( xz+dz+xz >= 2 && f == 1 && flag == 0  ) cout << b << endl;
		b = "";
	}
	return 0;
}
2025/6/18 19:32
加载中...