字符串操作,替换某些字符。注意没修改时输出的单复数区别,1个和多个是不一样的
#include <bits/stdc++.h>
using namespace std;
int main(){
int num;
cin>>num;
vector<pair<string,string>> res;
for(int i=0;i<num;i++){
string s1,s2;
cin>>s1>>s2;
int len=s2.size();
bool flag=true;
for(int i=0;i<len;i++){
if(s2[i]=='1'){
s2[i]='@';
flag=false;
}else if(s2[i]=='0'){
s2[i]='%';
flag=false;
}else if(s2[i]=='l'){
s2[i]='L';
flag=false;
}else if(s2[i]=='O'){
s2[i]='o';
flag=false;
}
}
if(!flag)res.push_back(pair<string,string>(s1,s2));
}
if(res.size()==0){
if(num==1)printf("There is 1 account and no account is modified\n");
else printf("There are %d accounts and no account is modified\n",num);
return 0;
}
printf("%d\n",res.size());
for(auto it1=res.begin();it1!=res.end();it1++){
printf("%s %s\n",it1->first.c_str(),it1->second.c_str());
}
}
436

被折叠的 条评论
为什么被折叠?



