yzg4781 @ 2024-07-28 12:34:15
//seHJ12!@,sjdkffH$123,sdf!@&12HDHa!,123&^YUhg@!
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[100]={};
cin>>a;
int t=0,t1=0,t2=0,t3=0;
int k=0;
int s=0;
for (int i=0;i<strlen(a);i++)
{
if(a[i]==',')
{
if(t+t1+t2>=2 && t3==1 && k-s<=12 && k-s>=6)
{
for(int j=s;j<=k-1;j++)
{
cout<<a[j];
}
s=k+1;
cout<<endl;
}
k+=1;
t=0,t1=0,t2=0,t3=0;
}
else
{
if(a[k]>='a' && a[k]<='z')
t=1;
if(a[k]>='A' && a[k]<='Z')
t1=1;
if(a[k]>='0' && a[k]<='9')
t2=1;
if(a[k]=='!' || a[k]=='@' || a[k]=='#' || a[k]=='$')
t3=1;
k++;
}
}
}
by yzg4781 @ 2024-07-28 12:36:27
最上面的是题目的测试数据
我测试数据后是对的,但提交后0分
by lyx422393265 @ 2024-07-28 20:27:05
最后一个密码的结尾不是逗号,需要注意判断,如果最后一个密码合法需要输出
by yzg4781 @ 2024-07-30 15:10:47
@lyx422393265 没关系的吧?
改了还是错
by lyx422393265 @ 2024-07-31 13:19:12
@yzg4781 当然有关系啊。。你的分支是只有遇到逗号才输出的,最后一串密码结尾是\0,要是合法你咋输出,样例只是恰好最后一个密码不合法
by piyuhan666 @ 2024-08-03 13:52:39
这题这部分有点问题