728x90
UVa Online Judge - 10252번 Common Permutation
[Java] 공통된 변경 문자열(Common Permutation)
문제 설명
내 코드
import java.io.*;
import java.util.*;
class Main {
public static void main(String[] args) throws Exception {
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextLine()){
String input1 =scanner.nextLine();
String input2 =scanner.nextLine();
Vector<Character> str1 = new Vector<Character>();
Vector<Character> str2 = new Vector<Character>();
ArrayList<Character> result= new ArrayList<Character>();
//입력 스트링 벡터에 저장
for(int j=0; j<input1.length();j++)
str1.add(input1.charAt(j));
for(int j=0; j<input2.length();j++)
str2.add(input2.charAt(j));
//하나하나 대조하여 발견되면 벡터에서 제거해준다.
for(int j=0; j<str1.size(); j++){
for(int k=0; k<str2.size();k++){
if(str1.get(j)==str2.get(k)){
result.add(str1.get(j));
str2.remove(k);
break;
}
}
}
//오름차순 정렬
Collections.sort(result, new Comparator<Character>(){
public int compare(Character o1,Character o2){
return o1.compareTo(o2);
}
});
//출력하기
for(char c:result)
System.out.print(c);
System.out.println("");
}
scanner.close();
}
}
🔑Key Point🔑
그냥 다른 포함된 것을 찾으면 안되고, 포함되었다면 그부분은 삭제해줘야 중복이 생기지 않는다.
728x90
반응형
'💡 CodingTest > UVa' 카테고리의 다른 글
[Java] 월도르프를 찾아라 Where's waldorf? - UVa 10010번 문제 (0) | 2020.09.26 |
---|---|
[Java] WERTYU 문제 - UVa 10082번 Programming Challenges 문제 17번 (0) | 2020.09.26 |
[Java] 쌓아 올리기 Stack'em up (0) | 2020.09.18 |
[Java] 동맹 휴업 Hartals (0) | 2020.09.11 |
[Java] 포커 패 Poker Hands (0) | 2020.09.11 |