Common permutation
Time Limit: 1000ms, Special Time Limit:2500ms, Memory Limit:32768KB
Total submit users: 1060, Accepted users: 951
Problem 10048 : No special judgement
Problem description
Given two strings of lowercase letters, a and b, print the longest string x of lowercase letters such that there is a permutation of x that is a subsequence of a and there is a permutation of x that is a subsequence of b.

Input
Input consists of pairs of lines. The first line of a pair contains a and the second contains b. Each string is on a separate line and consists of at most 1,000 lowercase letters.

Output
For each subsequent pair of input lines, output a line containing x. If several x satisfy the criteria above, choose the first one in alphabetical order.

Sample Input
pretty
women
walking
down
the
street
Sample Output
e
nw
et
Problem Source
UAL 1999

#include
#include
using namespace std;
int main(){
string a,b;
while(cin>>a>>b){
int c[26]={0},d[26]={0};
int n1=a.length(),n2=b.length();
for(int i=0;i<n1;i++){
if(c[(int)a[i]-97]==0){
c[(int)a[i]-97]=1;
}
}
for(int i=0;i<n2;i++){
if(d[(int)b[i]-97]==0){
d[(int)b[i]-97]=1;
}
}
for(int i=0;i<26;i++){
if(c[i]!=0&&d[i]!=0)
cout<<char(i+97);
}
cout<<endl;
}
}

1个回答

Problem 10048 : No special judgement
Problem description
Given two strings of lowercase letters, a and b, print the longest string x of lowercase letters such that there is a permutation of x that is a subsequence of a and there is a permutation of x that is a subsequence of b

hyp520520 回复a3325299: 大的错误信息是没有特殊有益的判断语句，你看看是否在判断语句地方对数据进行了针对性的处理，这类问题在C语言的编译器是不会报错的，最后只能慢慢找，或是分部查找判断

spanningen 编译器没有报错，但是提交题目后没有通过