PAT 甲级 1035 Password (20 分)(简单题)
To prepare for PAT, the judge sometimes has to generate random passwords for the users. The problem is that there are always some confusing passwords since it is hard to distinguish 1 (one) from l (L in lowercase), or 0 (zero) from O (o in uppercase). One solution is to replace 1 (one) by @, 0 (zero) by %, l by L, and O by o. Now it is your job to write a program to check the accounts generated by the judge, and to help the juge modify the confusing passwords.
Input Specification:
Each input file contains one test case. Each case contains a positive integer N (≤), followed by N lines of accounts. Each account consists of a user name and a password, both are strings of no more than 10 characters with no space.
Output Specification:
For each test case, first print the number M of accounts that have been modified, then print in the following M lines the modified accounts info, that is, the user names and the corresponding modified passwords. The accounts must be printed in the same order as they are read in. If no account is modified, print in one line There are N accounts and no account is modified where N is the total number of accounts. However, if N is one, you must print There is 1 account and no account is modified instead.
Sample Input 1:
3
Team000002 Rlsp0dfa
Team000003 perfectpwd
Team000001 R1spOdfa
Sample Output 1:
2
Team000002 RLsp%dfa
Team000001 R@spodfa
Sample Input 2:
1
team110 abcdefg332
Sample Output 2:
There is 1 account and no account is modified
Sample Input 3:
2
team110 abcdefg222
team220 abcdefg333
Sample Output 3:
There are 2 accounts and no account is modified
题解:
题目大意: 给你N个用户名和密码,要求把1转换成@,0 转换成%,l(L的小写)转换成L,O转换成o。
解题思路: 没啥弯弯绕绕的,直接挨个判断就行了,注意最后的输出就好 。
AC代码:
#include<bits/stdc++.h>
#include<iostream>
#include<algorithm>
#include<vector>
#include<queue>
#include<map>
#include<string>
#include<cstring>
using namespace std;
using namespace std;
struct node{
string nm;
char s[];
}a[];
int n;
int main(){
string nm;
char p[];
cin>>n;
int f=;
int k=;
for(int i=;i<=n;i++){
cin>>nm>>p;
int l=strlen(p);
f=;
for(int j=;j<l;j++){
if(p[j]==''){
f=;
p[j]='@';
}
if(p[j]==''){
f=;
p[j]='%';
}
if(p[j]=='l'){
f=;
p[j]='L';
}
if(p[j]=='O'){
f=;
p[j]='o';
}
}
if(f){
a[++k].nm=nm;
for(int j=;j<l;j++){
a[k].s[j]=p[j];
}
}
}
if(!f&&n==){
cout<<"There is 1 account and no account is modified";
}else if(!f){
cout<<"There are "<<n<<" accounts and no account is modified";
}else{
cout<<k<<endl;
for(int i=;i<=k;i++){
cout<<a[i].nm<<" "<<a[i].s<<endl;
}
}
return ;
}
PAT 甲级 1035 Password (20 分)(简单题)的更多相关文章
- PAT甲级——1035 Password (20分)
		
To prepare for PAT, the judge sometimes has to generate random passwords for the users. The problem ...
 - PAT Advanced 1035 Password (20 分)
		
To prepare for PAT, the judge sometimes has to generate random passwords for the users. The problem ...
 - PAT (Advanced Level) Practice 1035 Password (20 分) 凌宸1642
		
PAT (Advanced Level) Practice 1035 Password (20 分) 凌宸1642 题目描述: To prepare for PAT, the judge someti ...
 - PAT 甲级 1035 Password (20 分)
		
1035 Password (20 分) To prepare for PAT, the judge sometimes has to generate random passwords for th ...
 - PAT 甲级 1077 Kuchiguse (20 分)(简单,找最大相同后缀)
		
1077 Kuchiguse (20 分) The Japanese language is notorious for its sentence ending particles. Person ...
 - 【PAT】1035. Password (20)
		
题目:http://pat.zju.edu.cn/contests/pat-a-practise/1035 分析:简单题.直接搜索,然后替换,不会超时,但是应该有更好的办法. 题目描述: To pre ...
 - PAT 甲级 1061 Dating (20 分)(位置也要相同,题目看不懂)
		
1061 Dating (20 分) Sherlock Holmes received a note with some strange strings: Let's date! 3485djDk ...
 - 【PAT甲级】1035 Password (20 分)
		
题意: 输入一个正整数N(<=1000),接着输入N行数据,每行包括一个ID和一个密码,长度不超过10的字符串,如果有歧义字符就将其修改.输出修改过多少组密码并按输入顺序输出ID和修改后的密码, ...
 - PAT (Advanced Level) Practice 1035 Password (20 分)
		
To prepare for PAT, the judge sometimes has to generate random passwords for the users. The problem ...
 
随机推荐
- numpy  参考:https://mp.weixin.qq.com/s?__biz=MzU1MjYzNjQwOQ==&mid=2247486010&idx=1&sn=e42e6706e0e285ecbfdbbd76fb4ff352&chksm=fbfe50accc89d9ba56a3167c519638f1327a5c5bf12ed59dd8c6de9b2c25baeec1f1f8ad5fb7&
			
a=np.array([,,,]) b=np.arange() print(a,b) [ ] [ ] 对应相乘 c2=a*b [ 0 2 6 12] 对应相乘再求和 c3=a.dot( ...
 - Selenium常用API的使用java语言之15-警告框处理
			
在 WebDriver中处理JavaScript所生成的alert.confirm以及prompt十分简单,具体做法是使用switch_to_alert()方法定位到alert/confirm/pro ...
 - 洛谷P1346 电车【最短路】
			
题目:https://www.luogu.org/problemnew/show/P1346 题意:n个路口,每个路口有好几条轨道,默认指向给出的第一个路口. 如果要换到另外的轨道去需要按一次开关.问 ...
 - 学到了林海峰,武沛齐讲的Day16完
			
函数嵌套 foo()()() ==== foo()>>>gxr gxr()>>>wsb wsb()>>执行wsb函数 lambda 一行 ...
 - GreenPlum 锁表以及解除锁定
			
最近遇到truncate表,无法清理的情况,在master节点查看加锁情况,并未加锁这种情况极有可能是segment节点相关表加了锁,所以遇到这种情况除了排查master节点的锁,所有的segment ...
 - PostgreSQL 用户、角色、权限管理
			
PostgreSQL是一个多用户数据库,可以为不同用户指定允许的权限. 角色 PostgreSQL使用角色的概念管理数据库访问权限. 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组 ...
 - GridView用数据源控件和用DataTable作为数据源的不同
			
1.使用数据源控件可以自动做排序分页,不需要多余代码,可是由于自动绑定太多操作,反而觉得很不灵活 前台: <asp:GridViewID="gv_test"DataSourc ...
 - Bzoj 2733: [HNOI2012]永无乡(线段树+启发式合并)
			
2733: [HNOI2012]永无乡 Time Limit: 10 Sec Memory Limit: 128 MB Description 永无乡包含 n 座岛,编号从 1 到 n,每座岛都有自己 ...
 - Poj 2104 K-th Number(主席树&&整体二分)
			
K-th Number Time Limit: 20000MS Memory Limit: 65536K Case Time Limit: 2000MS Description You are wor ...
 - leetcode 198 动态规划
			
题目意思是:给一组数组,要使选取的子数组和(不用连续)最大,但不能同时选取相邻. 我的思路: 对于a[i]来说,要么选取,要么不选取.假设选取a[i],那么肯定不能选取a[i-1],只能看前0~i-2 ...