View Code of Problem 2591

#include<stdio.h>
#include<string.h>
#include<math.h>
int main(){
	int t;
	scanf("%d",&t);
	while(t--){
		char a[200];
		char b[200];
		scanf("%s",a);
		scanf("%s",b);
		int c[26] = {0};
		int d[26] = {0};
		
		int len1 = strlen(a);
		int len2 = strlen(b);
		int i,j;
		for(i = 0;i < len1; i++){
			c[a[i]-'A']++;
		}
		for(i = 0;i < len2; i++){
			d[b[i]-'A']++;
		}
		int flag = 0;
		for(i = 0;i < 26; i++){
			if(c[i]>0&&d[i]>0){
				flag = 1;
				int min = fmin(c[i],d[i]);
				while(min--)
					printf("%c",i+'A');
			}
		}
		if(flag == 0)
			printf("-1\n");
		else
			printf("\n");
	}
}

Double click to view unformatted code.


Back to problem 2591