1029 旧键盘

一、题目

旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。

二、输入输出

输入格式

输入在 2 行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过 80 个字符的串,由字母 A-Z(包括大、小写)、数字 0-9、以及下划线 _(代表空格)组成。题目保证 2 个字符串均非空。

输出格式

按照发现顺序,在一行中输出坏掉的键。其中英文字母只输出大写,每个坏键只输出一次。题目保证至少有 1 个坏键。

三、样例

输入样例

7_This_is_a_test
_hs_s_a_es

输出样例

7TI

四、题目分析

读入两个字符串,逐个字符对比,遇到缺少的字符,将小写字符转换为大写字符,判断字符是否在之前已经出现,如果没有出现,放入数组中。最后遍历输出数组。

五、代码

#include<bits/stdc++.h>
using namespace std;
vector<char> us;
bool find(char ch){for(auto i:us)if(i==ch)return true;return false;
}
int main(){string s1;string s2;cin>>s1>>s2;for(int i=0,j=0;i<s1.size();){if(s1[i]==s2[j]){i++;j++;}else{char ch=s1[i];if(s1[i]>='a'&&s1[i]<='z'){ch=ch-('a'-'A');}if(!find(ch))us.push_back(ch);i++;}}for(auto i:us)putchar(i);return 0;
}

六、总结

不能用set实现顺序存储、检查存在的功能,set的底层实现是红黑树,在调整的时候会改变元素的存放顺序。

PAT (Basic Level) Practice1029 旧键盘相关推荐

  1. 「PAT乙级真题解析」Basic Level 1033 旧键盘打字 (问题分析+完整步骤+伪代码描述+提交通过代码)

    乙级的题目训练主要用来熟悉编程语言的语法和形成良好的编码习惯和编码规范.从小白开始逐步掌握用编程解决问题. PAT乙级BasicLevelPractice 1033 问题分析 题目设定了一个场景: 有 ...

  2. PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)

    PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)   http://www.patest.cn/contests/pat-b-practise/1025 ...

  3. PAT (Basic Level) Practise (中文)-1034. 有理数四则运算(20)

    PAT (Basic Level) Practise (中文)-1034. 有理数四则运算(20)  http://www.patest.cn/contests/pat-b-practise/1034 ...

  4. 【题解】PAT (Basic Level) Practice (中文)

    互联网行业的小白,写博客的目的是为了记录自己的学习过程.对自己学习中所犯的错误做一个总结.由于水平有限,博客中难免会有一些错误出现,有纰漏之处恳请各位大佬不吝赐教! PAT Basic Level P ...

  5. PAT basic level 答案+解题思路+难点 (个人刷题记录)

    PAT basic level 使用语言:C++ 仅记录一下自己刷题过程的心得体会 永远保持更新(期待更好的解法) 可能有些题没有(那就是我还没做出来,以后会更的!) 欢迎大家与我讨论交流√ 题目序列 ...

  6. 可优化-PAT (Basic Level) Practice Python解法 1026 程序运行时间(时间进位/四舍五入Tobe解决)

    可优化-PAT (Basic Level) Practice Python解法 1026 程序运行时间(时间进位/四舍五入Tobe解决) c1, c2 = map(int,input().split( ...

  7. 1001 害死人不偿命的(3n+1)猜想 (15分) PAT (Basic Level) Practice (中文)C语言版

    PAT (Basic Level) Practice (中文) 1001 害死人不偿命的(3n+1)猜想 (15分) 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一 ...

  8. 卡拉兹(Callatz)猜想,PAT(Basic Level) Practise NO.1001

    PAT(Basic Level) Practise NO.1001 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半. 这样 ...

  9. PAT (Basic Level) Practice (中文)1095 解码PAT准考证 (25 分)

    PAT (Basic Level) Practice (中文)1095 解码PAT准考证 (25 分) PAT 准考证号由 4 部分组成: 第 1 位是级别,即T代表顶级:A代表甲级:B代表乙级: 第 ...

最新文章

  1. python 调用函数 开销_减少python中的函数调用开销
  2. Exchange Tech Issues 参考网站
  3. 徐州技师学院计算机程序设计,徐州技师学院2021年有哪些专业
  4. Maven的单元测试插件maven-surefire-plugin详解
  5. css文本过长如何设置省略号
  6. 【??链表】LeetCode 92. Reverse Linked List II
  7. Atitit. 有限状态机 fsm 状态模式
  8. java 获取vm配置参数_如何获取Java中的Java VM规范?
  9. IDEA如何集成P3C插件检测代码
  10. C++基础学习笔记:函数
  11. 什么是智能dns解析
  12. Qt::WA_QuitOnClose
  13. ArcGIS教程:如何为跨带数据投影
  14. www.ku6d.com采集目标
  15. org.apache.solr.client.solrj.impl.CloudSolrServer$RouteException: Exception writing document id xxxx
  16. 查询是否有公网IP的方法
  17. java毕业设计服装库存管理系统mybatis+源码+调试部署+系统+数据库+lw
  18. ffmpeg转码php配置,PHP+ffmpeg+nginx的配置实现视频转码(转)
  19. CMeKG代码解读(以项目为导向从零开始学习知识图谱)(一)
  20. C语言:输入某一年的第几天,计算并输出它是这一年的第几月第几日?

热门文章

  1. Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same(解决)
  2. seqkit根据基因id_ID转换靠的是深厚的背景知识加上一点代码技巧
  3. python重要性_基于Python的随机森林特征重要性图
  4. Java基础教程【第八章:访问修饰符】
  5. python3.7官网下载步骤_python下载(python官网下载步骤)
  6. repeat mysql翻译_MySQL数据库中系统函数repeat有哪些功能呢?
  7. birt报表数据只有一条_这个低代码报表开发平台,操作类似Excel,用好了不需要加班...
  8. textbox内容转为字符串_【公告】整改文章内容
  9. html不同类别的列表设置,HTML --列表
  10. 谷歌Chrome浏览器开发者工具教程—基础功能篇