题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805454989803520 题目思路:简单模拟注意1的特殊输出就好; 代码:
# include<stdio.h> # include<string.h> # include<algorithm> using namespace std; struct ans{ char user[15],password[15]; int flag; ans(){ flag=0; } }s[1010]; int main(){ int n,i,j; scanf("%d",&n); for(i=0;i<n;i++){ scanf("%s %s",s[i].user,s[i].password); } int k=0; for(i=0;i<n;i++){ for(j=0;j<strlen(s[i].password);j++){ if(s[i].password[j]=='l'){ s[i].password[j]='L'; s[i].flag=1; } if(s[i].password[j]=='1'){ s[i].password[j]='@'; s[i].flag=1; } if(s[i].password[j]=='0'){ s[i].password[j]='%'; s[i].flag=1; } if(s[i].password[j]=='O'){ s[i].password[j]='o'; s[i].flag=1; } } if(s[i].flag==1) k++; } if(n>1){ if(k==0) printf("There are %d accounts and no account is modified",n); else{ printf("%d\n",k); for(int i=0;i<n;i++){ if(s[i].flag==1) printf("%s %s\n",s[i].user,s[i].password); } } } else if(n==1) printf("There is 1 account and no account is modified"); return 0; }