Please tell me what is the problem in code. It’s giving right answers then also not passing test cases : (
import java.util.*;
class anagramCodechef{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int T = sc.nextInt();
for(int t=0; t<T; t++){
String s = sc.next();
String p = sc.next();
int l = s.length();
int indx;
char[] arr = s.toCharArray();
Arrays.sort(arr);
for(int j=0; j<p.length(); j++){
if(p.charAt(j) == arr[l-1])
l--;
else{
for(int i=0; i<l-1; i++){
if(p.charAt(j) == arr[i]){
for(int k=i+1; k<l; k++){
arr[k-1] = arr[k];
}
l--;
break;
}
}
}
}
for(indx=0; indx<l; indx++)
if(p.charAt(0) < arr[indx])
break;
s = String.valueOf(arr);
StringBuffer sb = new StringBuffer(s);
sb.setLength(l);
sb.insert(indx, p);
System.out.println(sb.toString());
}
}
}