View Code of Problem 2591

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int cmp(const void *a,const void *b)
{
	return *(char *)a - *(char *)b;
}
int main() 
{
	char a[1000],b[1000];
	char temp;
	int T,k,i,j,flag;
	scanf("%d",&T);
	while(T--)
	{
		flag=0;
		char c[1000];
		k=0;
		scanf("%s",a);
		scanf("%s",b);
		for(i=0;i<strlen(a);i++)
		{
			for(j=0;j<strlen(b);j++)
			{
				if(b[j]==a[i])
				{
					c[k++]=a[i];
					b[j]='*';
					flag=1;
					break;
				}
			}
		}
		c[k]='\0';
		if(flag==0)
		{
			printf("%d\n",-1);
		}else
		{
			qsort(c,strlen(c),sizeof(char),cmp);
			puts(c);
		}
	} 	
}

Double click to view unformatted code.


Back to problem 2591