만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

아인타, 빈타, 그리고 씬타

시간 제한1.5초메모리 제한1024 MB

요약
아인타가 A의 값으로 B와 C의 칸을 덮어써서, 정렬하고 중복을 없앤 두 수열이 같아지게 하며 그 길이 k의 최댓값을 구합니다.
난이도

보통10점 중 7점

유형
그래프, 해시맵
정답자
아직 제출이 없습니다

문제

Ainta, Binta, Cinta는 각각 길이 nn의 수열을 가지고 있다. Ainta의 수열은 A1,A2,…,AnA_1, A_2, \ldots, A_n이고, Binta의 수열은 B1,B2,…,BnB_1, B_2, \ldots, B_n, Cinta의 수열은 C1,C2,…,CnC_1, C_2, \ldots, C_n이다.

심심한 Ainta가 Binta의 수열에 장난을 치기로 했다. Ainta는 1≤i≤n1 \le i \le n인 ii를 골라 BiB_i를 AiA_i로 덮어쓸 수 있다. 교환이 아니라 덮어쓰기이므로, BiB_i는 AiA_i 값이 되고 AiA_i는 그대로 남는다. 이 연산은 한 번 이상 해도 되고 전혀 하지 않아도 된다.

Ainta는 Cinta의 수열에도 같은 방식으로 장난을 쳤다. 이 장난은 Binta의 수열에 친 장난과 독립이다. 예를 들어 B1B_1을 A1A_1로 덮어썼다고 해서 C1C_1에도 같은 장난을 칠 필요는 없다.

다음 날 Binta와 Cinta는 각자의 수열을 정렬한 뒤 중복된 원소를 모두 제거한다. 예를 들어 B=[3,2,1,3,2]B = [3, 2, 1, 3, 2]이면 정렬하여 [1,2,2,3,3][1, 2, 2, 3, 3]을 만들고, 중복을 제거하여 [1,2,3][1, 2, 3]을 얻는다. 이 작업을 마쳤을 때 두 수열이 같으면, Binta와 Cinta는 크게 감동하여 kk시간 동안 오열한다. 여기서 kk는 중복을 제거한 후 수열의 길이이다.

Ainta는 두 사람에게 최대한의 감동을 주려고 한다. 가능한 kk의 최댓값과, 그 최댓값을 얻을 수 있는 해를 출력하여라. 출력하는 해는 Binta와 Cinta가 중복을 제거한 후 얻은 수열이다. k>0k > 0인 답은 항상 존재한다.

입력

첫 번째 줄에 수열의 길이 nn이 주어진다. (1≤n≤5 0001 \le n \le 5\,000)

두 번째 줄에 A1,A2,…,AnA_1, A_2, \ldots, A_n이 주어진다. (1≤Ai≤10 0001 \le A_i \le 10\,000)

세 번째 줄에 B1,B2,…,BnB_1, B_2, \ldots, B_n이 주어진다. (1≤Bi≤10 0001 \le B_i \le 10\,000)

네 번째 줄에 C1,C2,…,CnC_1, C_2, \ldots, C_n이 주어진다. (1≤Ci≤10 0001 \le C_i \le 10\,000)

출력

첫 번째 줄에 가능한 최대 kk를 출력한다.

두 번째 줄에 kk개의 정수로, Binta와 Cinta가 최종적으로 얻게 될 수열을 출력한다. 가능한 답이 여러 가지면 그중 하나만 출력해도 된다.

예제1

  1. 예제 1

    입력
    3
    1 1 1
    2 3 4
    5 4 2
    
    예상 출력
    3
    1 2 4