文档章节

PAT A1084. Broken Keyboard (20)

 阿豪boy
发布于 2017/02/25 18:02
字数 363
阅读 3
收藏 0
点赞 0
评论 0

https://www.patest.cn/contests/pat-a-practise/1084

On a broken keyboard, some of the keys are worn out. So when you type some sentences, the characters corresponding to those keys will not appear on screen.

Now given a string that you are supposed to type, and the string that you actually type out, please list those keys which are for sure worn out.

Input Specification:

Each input file contains one test case. For each case, the 1st line contains the original string, and the 2nd line contains the typed-out string. Each string contains no more than 80 characters which are either English letters [A-Z] (case insensitive), digital numbers [0-9], or "_" (representing the space). It is guaranteed that both strings are non-empty.

Output Specification:

For each test case, print in one line the keys that are worn out, in the order of being detected. The English letters must be capitalized. Each worn out key must be printed once only. It is guaranteed that there is at least one worn out key.

Sample Input:

7_This_is_a_test
_hs_s_a_es

Sample Output:

7TI

 

思路:

1,如何在英文字母不区分大小写的情况下判断在第一个字符串中有哪些字符没有在第二个字符串中出现

2,如何保证同一个字符不区分大小写的情况下只输出一次,且均用大写输出

#include <iostream>
#include <cstdio>
#include <string.h>

using namespace std;

char a[111],b[111];
int cmp(char a,char b){
	return toupper(a)==toupper(b);
}
bool flag[200]={0};
int main(int argc, char *argv[])
{
	int lena,lenb;
	scanf("%s %s",a,b);
	lena = strlen(a);
	lenb=strlen(b);	
	for(int i=0;i<lenb;i++){
		for(int j=0;j<lena;j++){
			if(a[j] && cmp(a[j],b[i]) )
				a[j]=0;
		}
	} 
	
	for(int i=0;i<lena;i++)
		if(a[i] && !flag[ toupper(a[i])] ){
			printf("%c",toupper(a[i]));
			flag[ toupper(a[i])]=1;
		}
	printf("\n");
	return 0;
}

 

© 著作权归作者所有

共有 人打赏支持
粉丝 21
博文 877
码字总数 630932
作品 0
西安
Kodi v17.1 “Krypton” 发布,Bug 修复版本

Kodi v17.1 “Krypton” 发布了,这主要是一个 Bug 修复版本。 该版本主要完成的 bug 修复: Update Estuary and Estouchy with some bugfixes and improvements Fix EDL skipping Fix slow ......

局长 ⋅ 2017/03/22 ⋅ 0

pkill命令用法之 - 从终端踢掉其他登录者

想从终端快速踢掉系统中其他登录者,可以先用w命令查看当前所有登录信息,并确定自己所在终端号。 [root@gateway ~]# w 10:14:52 up 6:01, 3 users, load average: 0.00, 0.01, 0.05 USER T...

望云眷属 ⋅ 2017/06/23 ⋅ 0

Semantic UI 2.2.4 发布,前端界面开发框架

Semantic UI 2.2.4 发布了,Semantic UI——完全语义化的前端界面开发框架,跟 Bootstrap 和 Foundation 比起来,还是有些不同的,在功能特性上、布局设计上、用户体验上均存在很多差异。该版...

花仲马 ⋅ 2016/08/26 ⋅ 8

YouTrack 6.5 Build 16807 发布,Bug 修复版本

YouTrack 6.5 Build 16807 发布,此次构建现已提供下载。 此次构建包括一些重要的 bug 修复: JT-29440 — Jetty SSL configuration is out of date JT-31577 — OAuth 2.0 Error JT-31859 —...

oschina ⋅ 2015/10/02 ⋅ 0

理解PGA(2)pga_aggregate_target详解

注: 1)pgaaggregatetarget以下简称PAT 2)我的环境: 11:42:10 sys@ORCL (^ω^) select * from v$version where rownum=1; BANNER -----------------------------------------------------......

长平狐 ⋅ 2012/09/19 ⋅ 0

git@oschina 这次更新后原有服务器无法进行有效性验证

[root@iZ94e503znjZ ~]# ssh -T -v git@oschina.net OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options f......

konakona ⋅ 2014/11/16 ⋅ 17

youngwolf/st_asio_wrapper

stasiowrapper Overview stasiowrapper is an asynchronous c/s framework based on Boost.Asio, besides all benefits brought by Boost and Boost.Asio, it also contains: Based on messa......

youngwolf ⋅ 2015/04/29 ⋅ 0

16.2、信号捕捉

1、信号帮助: 方法一:#man 7 signal 方法二:#kill -l 方法三:#trap -l 2、常用信号列表 3、trap:捕捉信号, 它不能捕捉9号信号(SIGKILL)和15号信号(SIGTERM),一般常用的捕捉信号是...

嘀充值成功 ⋅ 01/20 ⋅ 0

关于oschina的git配置问题

windows平台 msysgit版本为1.9.x,配置git@git.oschina.net 出现如下错误, 之前步骤都是好的,以下是调试输出的信息 $ ssh -vT git@git.oschina.netOpenSSH_6.6.1, OpenSSL 1.0.1i 6 Aug 2...

toby520 ⋅ 2015/05/28 ⋅ 3

TestCafe v0.11.0 发布,重新设计选择器系统

TestCafe v0.11.0 发布了。重新设计的选择器系统,内置断言和大量的错误修复! 更新内容: Action keyboard events now have and properties set (#993). , that was broken is some cases p...

amoskovkin ⋅ 2016/12/09 ⋅ 1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

BS与CS的联系与区别【简】

C/S是Client/Server的缩写。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、InFORMix或 SQL Server。客户端需要安装专用的客户端软件。 B/S是Brower/...

anlve ⋅ 32分钟前 ⋅ 0

发生了什么?Linus 又发怒了?

在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。 这一次 Linus Torvalds 发怒的原...

问题终结者 ⋅ 51分钟前 ⋅ 0

在树莓派上搭建一个maven仓库

在树莓派上搭建一个maven仓库 20180618 lambo init 项目说明 家里有台树莓派性能太慢。想搭建一个maven私服, 使用nexus或者 jfrog-artifactory 运行的够呛。怎么办呢,手写一个吧.所在这个...

林小宝 ⋅ 今天 ⋅ 0

Spring发展历程总结

转自与 https://www.cnblogs.com/RunForLove/p/4641672.html 目前很多公司的架构,从Struts2迁移到了SpringMVC。你有想过为什么不使用Servlet+JSP来构建Java web项目,而是采用SpringMVC呢?...

onedotdot ⋅ 今天 ⋅ 0

Python模块/包/库安装(6种方法)

Python模块/包/库安装(6种方法) 冰颖机器人 2016-11-29 21:33:26 一、方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二、方法2: 多文件模块,带setup.py 下载模块包(压缩文件zip...

cswangyx ⋅ 今天 ⋅ 0

零基础学习大数据人工智能,学习路线篇!系统规划大数据之路?

大数据处理技术怎么学习呢?首先我们要学习Python语言和Linux操作系统,这两个是学习大数据的基础,学习的顺序不分前后。 Python:Python 的排名从去年开始就借助人工智能持续上升,现在它已经...

董黎明 ⋅ 今天 ⋅ 0

openJdk和sun jdk的区别

使用过LINUX的人都应该知道,在大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的OpenJDK, 那么到底什么是OpenJDK,它与SUN JDK有什么关系和区别呢? 历史上的原因是,Ope...

jason_kiss ⋅ 今天 ⋅ 0

梳理

Redux 是 JavaScript 状态容器,提供可预测化的状态管理。 它是JS的状态容器,是一种解决问题的方式,所以即可以用于 react 也可以用于 vue。 需要理解其思想及实现方式。 应用中所有的 stat...

分秒 ⋅ 今天 ⋅ 0

Java 后台判断是否为ajax请求

/** * 是否是Ajax请求 * @param request * @return */public static boolean isAjax(ServletRequest request){return "XMLHttpRequest".equalsIgnoreCase(((HttpServletReques......

JavaSon712 ⋅ 今天 ⋅ 0

Redis 单线程 为何却需要事务处理并发问题

Redis是单线程处理,也就是命令会顺序执行。那么为什么会存在并发问题呢? 个人理解是,虽然redis是单线程,但是可以同时有多个客户端访问,每个客户端会有 一个线程。客户端访问之间存在竞争...

码代码的小司机 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部