updated at 2022. 12. 18. 오전 12:46:57

This commit is contained in:
rl544
2022-12-18 00:46:56 +09:00
parent 6882ac1ea3
commit b27620cc73
+14 -19
View File
@@ -6,29 +6,24 @@ import java.util.stream.Stream;
class Solution {
public String solution(String X, String Y) {
String answer = "";
LinkedList<Integer> an = new LinkedList<>();
HashMap<Integer, Integer> hash = new HashMap<>();
HashMap<Integer, Integer> hash2 = new HashMap<>();
char[] yy = Y.toCharArray();
char[] xx = X.toCharArray();
for(char cy : yy){
int nn = Character.getNumericValue(cy);
hash.put(nn,hash.getOrDefault(nn,0)+1);
LinkedList<Integer> linkedList = new LinkedList<>();
HashMap<Integer, Integer> hash = new HashMap<>(), hash2 = new HashMap<>();
for(char y : Y.toCharArray()){
int number = Character.getNumericValue(y);
hash.put(number,hash.getOrDefault(number,0)+1);
}
for(char cx : xx){
int nn = Character.getNumericValue(cx);
hash2.put(nn,hash2.getOrDefault(nn,0)+1);
for(char x : X.toCharArray()){
int number = Character.getNumericValue(x);
hash2.put(number,hash2.getOrDefault(number,0)+1);
}
for(Integer key : hash.keySet()){
if(hash2.getOrDefault(key,0)==0) continue;
Integer count = Math.min(hash.get(key),hash2.get(key));
for(int oo = 0; oo < count; oo++)
an.add(key);
int count = Math.min(hash.get(key),hash2.get(key));
for(int z = 0; z < count; z++)
linkedList.add(key);
}
Object[] ans = an.toArray();
answer = Arrays.stream(ans).map(String::valueOf).sorted(Comparator.reverseOrder()).collect(Collectors.joining());
answer = (answer.equals(""))? "-1" : answer;
answer = (answer.matches("^0+")) ? "0" : answer;
return answer;
answer = Arrays.stream(linkedList.toArray()).map(String::valueOf)
.sorted(Comparator.reverseOrder()).collect(Collectors.joining());
return (linkedList.isEmpty())?"-1":((answer.charAt(0)=='0')?"0":answer);
}
}