1035. Password (20)
2015-11-15 22:37
197 查看
1.简单的字符串处理
2.注意0,1个没有修改是,是is,大于1个是,是are
2.注意0,1个没有修改是,是is,大于1个是,是are
//#include<string> //#include <iomanip> #include<vector> #include <algorithm> //#include<stack> #include<set> #include<queue> #include<map> //#include<unordered_set> #include<unordered_map> //#include <sstream> //#include "func.h" //#include <list> #include<stdio.h> #include<iostream> #include<string> #include<memory.h> #include<limits.h> using namespace std; char replace(char a) { switch (a) { case'1':return '@'; case'0':return '%'; case'l':return 'L'; case'O':return 'o'; default:return a; } } int main(void) { int n; cin >> n; vector<pair<string, string>> ans(0); for (int i = 0; i < n; i++) { string name, pw; cin >> name >> pw; bool re = false; for (int i = 0; i < pw.size(); i++) { if (pw[i] == '1' || pw[i] == '0' || pw[i] == 'l' || pw[i] == 'O') { pw[i] = replace(pw[i]); re = true; } } if (re) { ans.push_back({ name, pw }); } } if (ans.size() == 0) { if (n<=1) printf("There is %d account and no account is modified\n", n); else printf("There are %d accounts and no account is modified\n", n); } else { cout << ans.size() << endl; for (int i = 0; i < ans.size(); i++) cout << ans[i].first << " " << ans[i].second << endl; } return 0; }
相关文章推荐
- Java如何集成支付宝即时到账接口
- UpdateData(TRUE)与 UpdateData(FALSE);
- 设计模式实例学习-责任链模式
- 黑马程序员——OC基础05—Foundation框架
- java基础的学习
- 初学python转义字符
- 【Loadrunner】检查点设置
- iOS Crash: dwarfdump 检查 UUID
- linux系统vi命令编辑后Ctrl+s“死机”
- TCP:传输控制协议
- DelegatingActionProxy
- HDU ACM 1050 Moving Tables
- 解决VS2010链接错误:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- 换行
- C语言关键字
- C语言的队列的初始化和先进先出的简洁程序
- linux 取得 UUID
- 电商设计中的一些概念
- vs2010 安装mvc3
- NHibernate Criteria中 Restriction与Expression的差别