[백준] 9322 철벽 보안 알고리즘 - Java
암호문을 평문으로 복원할 때는, 2키를 1키를 복원하는 규칙과 동일하다.
해시 맵을 사용해 2키를 1키로 복원하는 규칙을 저장해두고, 암호문에 대해서 적용시켜 문제를 해결할 수 있다.
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(br.readLine());
for(int i=0; i<T; i++){
int N = Integer.parseInt(br.readLine());
StringTokenizer st1 = new StringTokenizer(br.readLine());
StringTokenizer st2 = new StringTokenizer(br.readLine());
StringTokenizer st3 = new StringTokenizer(br.readLine());
String[] arr1 = new String[N];
String[] arr2 = new String[N];
for(int j=0; j<N; j++){
arr1[j] = (st1.nextToken());
}
for(int j=0; j<N; j++){
arr2[j] = (st2.nextToken());
}
HashMap<Integer, Integer> hm = new HashMap<>();
for(int j=0; j<N; j++){
for(int k=0; k<N; k++){
if(arr2[j].equals(arr1[k])){
hm.put(j,k);
break;
}
}
}
String[] ans = new String[N];
for(int j=0; j<N; j++){
int idx = hm.get(j);
ans[idx] = st3.nextToken();
}
for(int j=0; j<N; j++){
System.out.print(ans[j] + " ");
}
System.out.println();
}
}
}
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준] 2304 창고 다각형 - Java (0) | 2022.04.25 |
---|---|
[백준] 16165 걸그룹 마스터 준석이 - Java (0) | 2022.04.24 |
[백준] 3077 임진왜란 - Java (0) | 2022.04.24 |
[백준] 1972 놀라운 문자열 - Java (0) | 2022.04.24 |
[백준] 12757 전설의 JBNU - Java (0) | 2022.04.23 |
댓글
이 글 공유하기
다른 글
-
[백준] 2304 창고 다각형 - Java
[백준] 2304 창고 다각형 - Java
2022.04.25 -
[백준] 16165 걸그룹 마스터 준석이 - Java
[백준] 16165 걸그룹 마스터 준석이 - Java
2022.04.24 -
[백준] 3077 임진왜란 - Java
[백준] 3077 임진왜란 - Java
2022.04.24 -
[백준] 1972 놀라운 문자열 - Java
[백준] 1972 놀라운 문자열 - Java
2022.04.24