tc=int(input())
for _ in range(tc):
n=int(input())
k1=list(input().split())
k2=list(input().split())
p=list(input().split())
s = []
for i in k1:
s.append(k2.index(i))
arr = []
for i in s:
arr.append(p[i])
result = ""
for s in arr:
result += s + " "
print(result.strip())
<코드 설명>
testcase를 먼저 입력받아주었다.
tc만큼 for문으로 반복시켜 한 문장의 단어 수인 n, 제 1 공개키인 k1, 제 2 공개키인 k2, 암호문인 p를 입력받아주었다.
k2에서의 k1 원소인 i의 인덱스를 s에 추가해주었다. 이렇게 k2의 암호화 방식을 저장하였다.
저장된 s의 원소인 i를 이용해 arr에 p[i]를 추가해주었다. k2의 암호화 방식대로 p를 저장해주는 것이다.
그리고 이 리스트를 문자열로 바꾸어 출력해주었다.
<실행결과>
'Algorithm > BOJ' 카테고리의 다른 글
[BOJ] 1065 한수 (0) | 2022.10.09 |
---|---|
[BOJ] 2776 암기왕 (0) | 2022.10.09 |
[BOJ] 1463 1로 만들기 (0) | 2022.10.02 |
[BOJ] 2910 빈도 정렬 (0) | 2022.10.02 |
[BOJ] 25325 학생 인기도 측정 (0) | 2022.10.02 |