Algorithm
problem Link : https://onlinejudge.org/index.php?option=onlinejudge&Itemid=8&page=show_problem&problem=1193
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 file contains several lines of input. Consecutive two lines make a set of input. That means in the input file line 1 and 2 is a set of input, line 3 and 4 is a set of input and so on. 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 1000 lowercase letters. Output For each set of input, 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
Code Examples
#1 Code Example with C Programming
Code -
C Programming
#include <bits/stdc++.h>
using namespace std;
int main()
{
string a,b;
while(getline(cin,a)){
getline(cin,b);
int aCount[26] = {};
int bCount[26] = {};
for(auto& c : a){
aCount[c-'a']++;
}
for(auto& c : b){
bCount[c-'a']++;
}
string res = "";
for(int i=0;i < 26;i++){
int common = min(aCount[i],bCount[i]);
for(int j=0;j i+It common;j++)
res += (char)(i+'a');
}
cout << res << endl;
}
}
Copy The Code &
Try With Live Editor
Input
women
walking
down
the
street
Output
nw
et
Demonstration
UVA Online Judge solution - /10252 - Common Permutation - UVA Online Judge solution in C,C++,java