简单的字符串题目。
AC代码:
#include<iostream>
#include<vector>
#include<map>
#include<cstdio>
#include<algorithm>
#include<queue>
#include<cstring>
#include<list>
#define inf 10000000
using namespace std;
int mark[1005];
struct node
{
string name;
string passw;
};
vector<node> v;
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
node tmp;
cin>>tmp.name>>tmp.passw;
v.push_back(tmp);
}
int ans=0;
for(int i=0;i<v.size();i++)
{
int flag=0;
for(int j=0;j<v[i].passw.size();j++)
{
if(v[i].passw[j]=='1')
{
v[i].passw[j]='@';
flag=1;
}
else if(v[i].passw[j]=='0')
{
v[i].passw[j]='%';
flag=1;
}
else if(v[i].passw[j]=='l')
{
v[i].passw[j]='L';
flag=1;
}
else if(v[i].passw[j]=='O')
{
v[i].passw[j]='o';
flag=1;
}
}
if(flag==1)
ans++;
else
{
mark[i]=1;
}
}
if(n==1&&ans==0)
{
cout<<"There is 1 account and no account is modified";
}
else if(n>1&&ans==0)
{
cout<<"There are ";
cout<<n;
cout<<" accounts and no account is modified";
}
else
{
cout<<ans<<endl;
for(int i=0;i<v.size();i++)
{
if(mark[i]==0)
{
cout<<v[i].name<<" "<<v[i].passw<<endl;
}
}
}
}