PAT Broken Keyboard (20)
题目描写叙述
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.
输入描写叙述:
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.
输出描写叙述:
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.
输入样例:
7_This_is_a_test _hs_s_a_es
输出样例:
7TI
#include<iostream>
#include <cstring>
#include <cstdlib>
#include <string> using namespace std; const int MAX=80; //去掉字符串中反复的字符
void Remove(char* s, int num)
{
int i,j,l;
i=j=0;
for(i=0;i<num;i++)
{
for(l=0;l<j;l++)
{
if(s[l]==s[i])
break;
}
if(l>=j)
{
s[j++]=s[i];
}
}
s[j]='\0';
} //找出第1个字符串中,没有在第2个字符串中出现的字符。
void Worn(char* lhs, char* rhs, char* result)
{
int i,j,k;
k=0;
for(i=0;lhs[i]!='\0';i++)
{
for(j=0;rhs[j]!='\0';j++)
{
if(lhs[i]==rhs[j])
break;
}
if(rhs[j]=='\0')
{
result[k++]=lhs[i];
}
}
result[k]='\0';
} int main()
{
int i;
string n,m;
char sn[MAX],sm[MAX],sr[MAX];
while(cin>>n>>m)
{
//将输入的字符串1中的小写英文字符转换为大写英文字符
for(i=0;i<n.length();i++)
{
sn[i]=n[i];
if((sn[i]>=65)&&(sn[i]<=90) || (sn[i]>=97)&&(sn[i]<=122))
sn[i]=::toupper(sn[i]);
}
sn[i]='\0'; //将输入的字符串2中的小写英文字符转换为大写英文字符
for(i=0;i<m.length();i++)
{
sm[i]=m[i];
if((sm[i]>=65)&&(sm[i]<=90) || (sm[i]>=97)&&(sm[i]<=122))
sm[i]=::toupper(sm[i]);
}
sm[i]='\0'; /*
for(i=0;sn[i]!='\0';i++)
cout<<sn[i]<<" ";
cout<<endl; for(i=0;sm[i]!='\0';i++)
cout<<sm[i]<<" ";
cout<<endl;
*/ Remove(sn,n.length());
Remove(sm,m.length()); Worn(sn,sm,sr); for(i=0;sr[i]!='\0';i++)
cout<<sr[i];
cout<<endl;
}
return 0;
}
PAT Broken Keyboard (20)的更多相关文章
- 1084. Broken Keyboard (20)【字符串操作】——PAT (Advanced Level) Practise
题目信息 1084. Broken Keyboard (20) 时间限制200 ms 内存限制65536 kB 代码长度限制16000 B On a broken keyboard, some of ...
- pat1084. Broken Keyboard (20)
1084. Broken Keyboard (20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue On a ...
- PAT Advanced 1084 Broken Keyboard (20) [Hash散列]
题目 On a broken keyboard, some of the keys are worn out. So when you type some sentences, the charact ...
- 1084. Broken Keyboard (20)
On a broken keyboard, some of the keys are worn out. So when you type some sentences, the characters ...
- PAT (Advanced Level) 1084. Broken Keyboard (20)
简单题. #include<cstdio> #include<cstring> #include<cmath> #include<vector> #in ...
- 【PAT甲级】1084 Broken Keyboard (20 分)
题意: 输入两行字符串,输出第一行有而第二行没有的字符(对大小写不敏感且全部以大写输出). AAAAAccepted code: #define HAVE_STRUCT_TIMESPEC #inclu ...
- 1084. Broken Keyboard (20)-水题
#include <iostream> #include <cstdio> #include <string.h> #include <algorithm&g ...
- PAT 1084 Broken Keyboard
1084 Broken Keyboard (20 分) On a broken keyboard, some of the keys are worn out. So when you type ...
- PAT_A1084#Broken Keyboard
Source: PAT A1084 Broken Keyboard (20 分) Description: On a broken keyboard, some of the keys are wor ...
随机推荐
- MySql学习笔记(1)-安装
一.安装环境 操作系统:win7 64ibt MySql版本:5.7.10.0 二.安装过程 1.点击Add 2.选择需要安装的组件 3.Excute 4.Next 5.Next 6.进入服务器配置 ...
- MySql数据库存储emoji表情报错解决办法
异常:java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x94' for column 'name' at row 1 解决: ...
- WebForm vs MVC
What is ASP.NET? ASP.NET is a Microsoft’s Web application framework built on Common language runtime ...
- 继承static的注意点
继承static的注意点 singleton模式会使用 <?php class Auth { protected static $_instance = null; /** * 单用例入口 * ...
- Python中*args和**kwargs的使用
函数定义 使用*args和**kwargs传递可变长参数: *args用作传递非命名键值可变长参数列表(比如元组) **kwargs用作传递键值可变长参数列表(比如字典) 函数入参 *args 传递一 ...
- 网络编程-socketserver
网络编程使用socketserver,通常包括以下几步:一.定义类,并继承socketserver.BaseRequestHandler 二.重写handle方法 三.实例化TCPServer,并传递 ...
- 自定义php函数的mysql数据库pdo包装
define('DB_DSN','mysql:dbname=数据库名;charset=UTF8');define('DB_USER','root');define('DB_PASSWORD',''); ...
- ArrayList经典Demo
import java.util.ArrayList; import java.util.Iterator; public class ArrayListDemo { public static vo ...
- xmpp 消息和好友上下线(3)
原始地址:XMPPFrameWork IOS 开发(四) 消息 //收到消息 - (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XM ...
- LeetCode_16 3SumCloest
3Sum Closest Given an array nums of n integers and an integer target, find three integers in nums su ...