旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?

输入格式:

输入在2行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过105个字符的串。可用的字符包括字母[a-z, A-Z]、数字0-9、以及下划线“_”(代表空格)、“,”、“.”、“-”、“+”(代表上档键)。题目保证第2行输入的文字串非空。

注意:如果上档键坏掉了,那么大写的英文字母无法被打出。

输出格式:

在一行中输出能够被打出的结果文字。如果没有一个字符能被打出,则输出空行。

输入样例:

7+IE.
7_This_is_a_test.

输出样例:

_hs_s_a_tst
#include<cstdio>
#include<cstring>
const int maxn = 100010;
char str[maxn];
bool HashTable[256];
int main(){memset(HashTable,true,sizeof(HashTable));gets(str);int len = strlen(str);for(int i = 0; i < len; i++){if(str[i] >= 'A' && str[i] <= 'Z'){str[i] = str[i] - 'A' + 'a';}HashTable[str[i]] = false;}gets(str);len = strlen(str);for(int i = 0; i < len; i++){if(str[i] >= 'A' && str[i] <= 'Z'){int low = str[i] - 'A' + 'a';if(HashTable[low] == true && HashTable['+']==true){printf("%c",str[i]);}}else if(HashTable[str[i]] == true){printf("%c",str[i]);}}printf("\n");return 0;
}

//第三个测试点未通过,待验证
#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
const int maxn = 100010;int main(){bool hashTable[270];memset(hashTable,true,sizeof(hashTable));     char str1[maxn],str2[maxn];cin >> str1 >> str2;int len1 = strlen(str1);int len2 = strlen(str2);for(int i = 0 ; i < len1; i++){if(str1[i] >= 'A' && str1[i] <= 'Z')str1[i] = str1[i] - 'A' + 'a';hashTable[str1[i]] = false;}bool flag = false;for(int i = 0; i < len2; i++){if(str2[i] >= 'A' && str2[i] <= 'Z'){int low = str2[i] - 'A' + 'a';if(hashTable['+'] == true && hashTable[low] == true){printf("%c",str2[i]);flag = true;}            }else if(hashTable[str2[i]] == true){printf("%c",str2[i]);flag = true;}        }if(!flag) printf("\n"); return 0;
}

转载于:https://www.cnblogs.com/wanghao-boke/p/8644802.html

1033. 旧键盘打字(20)相关推荐

  1. C++学习之路 | PTA乙级—— 1033 旧键盘打字 (20 分)(精简)

    1033 旧键盘打字 (20 分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行 ...

  2. PAT乙级 1033 旧键盘打字 (20 分)

    1033 旧键盘打字 (20 分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 原题链接 代码 #incl ...

  3. 【PAT乙】1033 旧键盘打字 (20分) 字符串

    1033 旧键盘打字 (20分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行中 ...

  4. 1033 旧键盘打字 (20 分)

    1033 旧键盘打字 (20 分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行 ...

  5. PAT 1033 旧键盘打字 (20 分) C++

    1033 旧键盘打字 (20 分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行 ...

  6. 1033 旧键盘打字(20)(20 分)

    1033 旧键盘打字(20)(20 分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在2 ...

  7. pat 乙级1033 旧键盘打字(20)

    旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字. 以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在2行中分别给出坏掉的那些键.以及应该输入的文字 ...

  8. 1033 旧键盘打字 (20 分)(c语言)

    旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行中分别给出坏掉的那些键.以及应该输入 ...

  9. 测试点2错的来:1033 旧键盘打字 (20分)

    立志用更少的代码做更高效的表达 PAT乙级最优题解-->传送门 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是 ...

最新文章

  1. YOLOv4中的tricks概念总结——Bag of freebies
  2. websocket连接mqtt实现发布及订阅主题
  3. 程序员职场第二次课笔记 9.9号
  4. .Net开源 Shuttle(飞梭)服务总线(ESB)入门
  5. 各种编程语言,Linux命令行播放,Bio-Linux,Markdown编辑器等
  6. Flink学习笔记:搭建Flink on Yarn环境并运行Flink应用
  7. linux扩展磁盘空间命令_在Linux上监视磁盘空间– SQL Server DBA的有用命令
  8. 黑大选修计算机模拟物理学,黑龙江大学学分制选课指南.doc
  9. vsftpd安装配置_CentOS7配置vsftpd虚拟用户模式详解
  10. decbin php,PHP decbin()函数
  11. IT行业都能干什么事?为什么要学习IT技能呢?
  12. String常用 方法
  13. DNS的更新和ddns(动态域名解析)
  14. ubuntu 如何放大终端窗口字体
  15. H5时代的多行文本框
  16. 再读德鲁克#2 如何提升生产率
  17. cad展点kszd小程序_cad实现批量展坐标点方法介绍
  18. oracle 查找索引大小写,关于sql:Oracle中不区分大小写的搜索
  19. 高级语言编译/解释流程
  20. win10怎么连接android手机,如何将手机与Win10电脑关联以在电脑上继续任务?

热门文章

  1. css3中的background
  2. ORACLE基本SQL语句-查询篇
  3. OpenSSL再曝CCS注入漏洞-心伤未愈又成筛子
  4. 设备场景函数——72个
  5. java条件执行方法_java 开启多线程里面如何加条件判断执行其他逻辑?
  6. 公众平台模板消息所在行业_第三方工具微信公众号模板消息群发如何操作?
  7. c++ for循环 流程图_python 零基础必知--条件控制与循环语句
  8. mysql与jframe_java-如何在JFrame上显示从mysql检索到的图像
  9. yum mysql5.7位置_CentOS yum 安装 Mysql5.7
  10. 地铁闸门会夹伤人吗_家长们注意啦!又有孩子被地铁闸机夹翻