【PAT甲级】1050 String Subtraction (20 分)

题意:

输入两个串,长度小于10000,输出第一个串去掉第二个串含有的字符的余串。

trick:

ascii码为0的是NULL,减去‘0‘,‘a‘,‘A‘,均会导致可能减成负数。

代码:

#define HAVE_STRUCT_TIMESPEC
#include<bits/stdc++.h>
using namespace std;
char s1[10007],s2[10007];
int vis[507];
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
cin.getline(s1,10005);
cin.getline(s2,10005);
int n=strlen(s1);
int m=strlen(s2);
for(int i=0;i<m;++i)
vis[s2[i]-NULL]=1;
for(int i=0;i<n;++i)
if(!vis[s1[i]-NULL])
cout<<s1[i];
return 0;
}

原文地址:https://www.cnblogs.com/ldudxy/p/11616884.html

时间: 2024-08-29 18:12:19

【PAT甲级】1050 String Subtraction (20 分)的相关文章

PAT Advanced 1050 String Subtraction (20 分)

Given two strings S?1?? and S?2??, S=S?1??−S?2?? is defined to be the remaining string after taking all the characters in S?2?? from S?1??. Your task is simply to calculate S?1??−S?2?? for any given strings. However, it might not be that simple to do

PAT:1050. String Subtraction (20) AC

#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; bool HARSH[260]; //实际上申请来之后初试都是false int main() { fill(HARSH,HARSH+260,true); char str1[10066]; char str2[10066]; gets(str1); gets(str2); int len1=strlen(str1)

PAT Advanced 1050 String Subtraction (20) [Hash散列]

题目 Given two strings S1 and S2, S = S1 – S2 is defined to be the remaining string afer taking all the characters in S2 from S1. Your task is simply to calculate S1 – S2 for any given strings. However, it might not be that simple to do it fast. Input

1050. String Subtraction (20)【字符串处理】——PAT (Advanced Level) Practise

题目信息 1050. String Subtraction (20) 时间限制10 ms 内存限制65536 kB 代码长度限制16000 B Given two strings S1 and S2, S = S1 - S2 is defined to be the remaining string after taking all the characters in S2 from S1. Your task is simply to calculate S1 - S2 for any giv

PAT 甲级 1015 Reversible Primes (20 分) (进制转换和素数判断(错因为忘了=))

1015 Reversible Primes (20 分) A reversible prime in any number system is a prime whose "reverse" in that number system is also a prime. For example in the decimal system 73 is a reversible prime because its reverse 37 is also a prime. Now given

PAT 甲级 1041 Be Unique (20 分)(简单,一遍过)

1041 Be Unique (20 分) Being unique is so important to people on Mars that even their lottery is designed in a unique way. The rule of winning is simple: one bets on a number chosen from [1]. The first one who bets on a unique number wins. For example

PAT 甲级 1108 Finding Average (20分)

1108 Finding Average (20分) The basic task is simple: given N real numbers, you are supposed to calculate their average. But what makes it complicated is that some of the input numbers might not be legal. A legal input is a real number in [−] and is a

PAT (Advanced Level) 1050. String Subtraction (20)

简单题. #include<iostream> #include<cstring> #include<cmath> #include<algorithm> #include<cstdio> #include<map> #include<queue> #include<string> #include<vector> using namespace std; const int maxn=100000

PAT甲题题解-1050. String Subtraction (20)-水题

#include <iostream> #include <cstdio> #include <string.h> #include <algorithm> using namespace std; /* 水题,注意字符范围是整个ASCII编码即可. */ const int maxn=130; int vis[maxn]; char s1[10000+5]; char s2[10000+5]; int main() { gets(s1); //getcha