sábado, 12 de octubre de 2013

UVa 10252

#include<iostream>
#include<cstdio>

using namespace std;

inline int min(int a, int b){
 return a<b?a:b;
}

int main(){
 int i,j;
 int oc1[26];
 int oc2[26];
 char w1[1024];
 char w2[1024];
 
 while(gets(w1) && gets(w2)){
  for(i=0;i<26;i++)oc1[i]=oc2[i]=0;
  
  for(i=0;w1[i];i++) oc1[w1[i]-'a']++;
  for(i=0;w2[i];i++) oc2[w2[i]-'a']++;
  
  for(i=0;i<26;i++){
   j=min(oc1[i],oc2[i]);
   while(j-->0) cout<<(char)(i+'a');
  }
  cout<<endl;
 }
}