1033. 旧键盘打字(20)
来源:互联网 发布:淘宝上的pvc墙纸有毒吗 编辑:程序博客网 时间:2024/05/17 22:10
旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?
输入格式:
输入在2行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过105个字符的串。可用的字符包括字母[a-z, A-Z]、数字0-9、以及下划线“_”(代表空格)、“,”、“.”、“-”、“+”(代表上档键)。题目保证第2行输入的文字串非空。
注意:如果上档键坏掉了,那么大写的英文字母无法被打出。
输出格式:
在一行中输出能够被打出的结果文字。如果没有一个字符能被打出,则输出空行。
输入样例:
7+IE.
7_This_is_a_test.
输出样例:
_hs_s_a_tst
思路很简单,就是第三个知识点需要注意,如果没有一个键坏,直接输出第二行的内容,但是我用的cin输入的,肯定不对,后来我改成了getchar().
#include<iostream>using namespace std;int main(){ bool bhash[128] = { false }; char c[100001], c1; int i = 0, N; c[i] = getchar(); while (c[i] != '\n') { c[++i] = getchar(); } N = i; c1 = c[0]; for (i = 0; i < N; i++) { if (c[i] >= 65 && c[i] <= 90) bhash[c[i]] = bhash[c[i] + 32] = true; else bhash[c[i]] = true; } cin >> c; if (c1 == '\n') { cout << c; return 0; } for (i = 0; c[i] != '\0'; i++) { if (c[i] >= 65 && c[i] <= 90) {//如果是大写字母 if (bhash[c[i]] == false && bhash['+'] == false) cout << c[i]; } else if (bhash[c[i]] == false)cout << c[i]; } cout << endl; return 0;}
0 0
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 1033. 旧键盘打字(20)
- 动态网页和静态网页
- poj 1061 青蛙的约会 (扩展欧几里得)
- Spring Data JPA
- 获取wifi信息
- HTML和CSS高级指南整理(04) 一 响应式网站设计
- 1033. 旧键盘打字(20)
- UltraCombo,UltraComboEdit 等下拉框控件不显示Header
- 如何衡量和提高测试效率
- 如何设置视频的帧率、分辨率、码率来调节音视频即时通讯的质量
- 获取每天的小时数以及星期几
- 座右铭
- 位平方和
- 使用Java语言需要注意的关键点
- Tiny4412 开发环境搭建(二)