만드는 중입니다

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

다섯 용사의 검

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

요약
서로 겹치지 않는 다섯 검의 공격력 후보 집합이 주어질 때, 최악의 경우에도 가장 강한 검을 찾는 데 필요한 시험 횟수의 최솟값을 구합니다.
난이도

어려움10점 중 8점

유형
동적 계획법, 게임 이론, 이분 탐색
정답자
아직 제출이 없습니다

문제

당신은 오천 년 만에 봉인에서 깨어난 마왕을 물리치기 위해 모험을 떠났다. 숲속을 탐험하던 중 의문의 남자를 마주쳤다. 남자는 당신에게 다가와 다섯 개의 검을 내밀며 말했다.

"오천 년 전에 존재했던 다섯 명의 용사 중 가장 강력한 검을 가진 자만이 마왕을 봉인할 수 있었다. 이것은 그들에게 전수받은 검이다. 신중하게 선택하여라."

각각의 검은 양의 정수인 공격력을 가지는데, 공격력이 얼마인지 맨눈으로 판별하기는 어렵다. 한때 견습 대장장이였던 당신은 각 검이 가질 수 있는 공격력 후보 집합을 알아냈다. 서로 다른 두 검의 공격력 후보 집합은 공통 원소를 가지지 않는다. 따라서 모든 검의 공격력은 서로 다르다.

당신은 남자에게 검의 공격력을 시험해 보겠다고 말했고, 남자는 승낙했다.

검을 시험하는 방법은 다음과 같다. 양의 정수 mm을 정한 뒤, 주변에서 단단함이 mm인 바위를 찾아 다섯 개의 검으로 한 번씩 베어 본다. 바위에 균열이 생기면 검의 공격력이 mm보다 높은 것이고, 그렇지 않으면 검의 공격력이 mm 이하인 것이다.

당신은 검을 여러 차례 시험해서 가장 강력한 검, 즉 공격력이 가장 높은 검을 찾고자 한다. 다음 시험에 쓸 바위의 단단함은 이전 시험들의 결과를 보고 정할 수 있다. 검의 공격력을 정확히 알아낼 필요는 없다. 가장 강력한 검이 무엇인지만 찾아내면 된다.

당신은 최선의 방법으로 검을 시험하고자 한다. 모든 가능성을 따졌을 때 검을 시험해야 하는 횟수의 최댓값이 가능한 한 작아야 한다. 당신이 최선의 방법으로 검을 시험한다면, 가장 강력한 검을 찾기 위해 최대 몇 번의 시험이 필요한가?

입력

총 다섯 개의 줄이 주어진다. ii번째 줄의 맨 앞에는 ii번째 검이 가질 수 있는 공격력 후보 집합 AiA_i의 크기가 주어진다. 그 뒤로 AiA_i의 원소들이 오름차순으로 주어진다. 모든 값은 공백으로 구분되어 주어진다.

각 ii에 대해 ∣Ai∣|A_i|는 양의 정수이며, 모든 ∣Ai∣|A_i|의 합은 50 00050\ 000 이하이다.

주어지는 모든 공격력은 서로 다른 양의 정수이며, 10910^9 이하이다.

출력

최선의 방법으로 검을 시험한다면, 가장 강력한 검을 찾기 위해 최대 몇 번의 시험이 필요한지 출력한다.

힌트

첫 번째 예제에서 각 검의 공격력이 1,30,2,20,31,30,2,20,3이라면, 검을 시험하는 과정의 예는 다음과 같다.

  1. 먼저 단단함이 3030인 바위로 검을 시험한다. 모든 검이 바위에 균열을 내지 못한다.
  2. 그 다음 단단함이 1010인 바위로 시험한다. 2번째와 4번째 검은 바위에 균열을 내고, 1번째, 3번째, 5번째 검은 균열을 내지 못한다.

두 시험 결과로 2번째 검이 가장 강력하다는 것을 알 수 있다. 공격력이 어떻게 되어 있든 최대 두 번의 시험으로 가장 강력한 검을 찾을 수 있다.

두 번째 예제에서는 검을 시험하지 않아도 3번째 검이 가장 강력하다는 것을 알 수 있다.

예제2

  1. 예제 1

    입력
    1 1
    3 10 30 50
    1 2
    2 20 40
    1 3
    
    예상 출력
    2
    
  2. 예제 2

    입력
    2 1 2
    2 3 4
    3 100 200 300
    2 5 6
    2 7 8
    
    예상 출력
    0