家人们谁懂啊,0分,玄关
查看原帖
家人们谁懂啊,0分,玄关
1219162
D5ysfzhw楼主2024/8/30 21:27

样例过,自己造了也过

#include<bits/stdc++.h>
using namespace std;
char a[105];
int s,d,x,f,b,lena,flg,c; 
int main(){
	cin>>a;
	lena=strlen(a);
	for(int i=0;i<=lena;i++){
		if(a[i]>='0'&&a[i]<='9')s=1,c++;
		else if(a[i]>='a'&&a[i]<='z')x=1,c++;
		else if(a[i]>='A'&&a[i]<='Z')d=1,c++;
		else if(a[i]=='!'||a[i]=='@'||a[i]=='#'||a[i]=='$')f=1,c++;
		else if(a[i]==','){
			if(c<6||c>12){s=0,d=0,x=0,f=0,b=0,c=0,flg=0;continue;}
			if(s&&x||s&&d||x&&d)b=1;
			else{s=0,d=0,x=0,f=0,b=0,c=0,flg=0;continue;}
			if(b&&f&&flg!=-1){
				for(int j=i-c;j<i;j++)cout<<a[j];
				cout<<endl;
				s=0,d=0,x=0,f=0,b=0,c=0,flg=0;
			}
		}else if(a[i]=='\0'){
			if(c<6||c>12)break;
			if(s&&x||s&&d||x&&d||s&&x&&d)b=1;
			else break;
			if(b&&f&&flg!=-1){
				for(int j=i-c;j<i;j++)cout<<a[j];
			}
		}else flg=-1;
	}
    return 0;
}

求大佬修改,玄关

2024/8/30 21:27
加载中...