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

+ Recent posts