만드는 중입니다

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

인도네시아 대회 과제 배정

시간 제한1초메모리 제한512 MB

요약
작가, 대회, 주제가 각각 최대 두 개씩만 연결된 그래프에서 쓸 수 있는 문제의 최대 개수를 구합니다.
난이도

어려움10점 중 8점

유형
그래프, DFS, 그리디
정답자
아직 제출이 없습니다

문제

2020년 인도네시아에서 번호가 1부터 CC까지 붙은 프로그래밍 대회 CC개가 열린다. 각 대회에는 0개 이상의 과제가 출제된다. 이 대회들에 과제를 낼 수 있는 과제 작성자는 AA명이며, 번호는 1부터 AA까지 붙어 있다. ii번째 작성자는 Li⊆{1,2,…,C}L_i \subseteq \{1, 2, \dots, C\}에 속한 대회에만 과제를 내고 싶어 하며, 같은 대회에 과제를 두 개 이상 낼 수 없다.

프로그래밍 대회 과제의 주제는 TT가지이며, 번호는 1부터 TT까지 붙어 있다. 각 과제는 주제를 정확히 하나 가진다. ii번째 작성자는 Fi⊆{1,2,…,T}F_i \subseteq \{1, 2, \dots, T\}에 속한 주제에 익숙하며, 그 주제에만 과제를 내고 싶어 한다. 같은 주제의 과제도 두 개 이상 낼 수 없다.

각 대회에는 교육 과정(시라버스)이 있다. jj번째 대회의 시라버스는 주제 집합 Sj⊆{1,2,…,T}S_j \subseteq \{1, 2, \dots, T\}를 포함하며, 그 대회에 낼 과제의 주제는 반드시 SjS_j에 속해야 한다. 대회마다 같은 주제의 과제는 두 개 이상 낼 수 없다.

각 작성자는 최대 두 대회를 좋아하고, 각 대회는 최대 두 명의 작성자가 좋아한다. 각 작성자는 최대 두 개의 주제에 익숙하고, 각 주제에 익숙한 작성자는 최대 두 명이다. 각 대회의 시라버스에는 최대 두 개의 주제가 있고, 각 주제는 최대 두 대회의 시라버스에 나타난다.

모든 대회에서 낼 수 있는 과제 수의 합의 최댓값을 구하라.

입력

첫 줄에 세 정수 AA, CC, TT (1≤A,C,T≤500001 \le A, C, T \le 50000)가 주어진다.

다음 AA개 줄은 각각 ∣Li∣|L_i| (0≤∣Li∣≤20 \le |L_i| \le 2)로 시작하고, 이어서 서로 다른 대회 번호 Li[x]L_i[x] (1≤Li[x]≤C1 \le L_i[x] \le C) ∣Li∣|L_i|개가 주어진다. 각 대회 번호는 모든 LiL_i를 통틀어 최대 두 번 나타난다.

다음 AA개 줄은 각각 ∣Fi∣|F_i| (0≤∣Fi∣≤20 \le |F_i| \le 2)로 시작하고, 이어서 서로 다른 주제 번호 Fi[y]F_i[y] (1≤Fi[y]≤T1 \le F_i[y] \le T) ∣Fi∣|F_i|개가 주어진다. 각 주제 번호는 모든 FiF_i를 통틀어 최대 두 번 나타난다.

다음 CC개 줄은 각각 ∣Sj∣|S_j| (0≤∣Sj∣≤20 \le |S_j| \le 2)로 시작하고, 이어서 서로 다른 주제 번호 Sj[z]S_j[z] (1≤Sj[z]≤T1 \le S_j[z] \le T) ∣Sj∣|S_j|개가 주어진다. 각 주제 번호는 모든 SjS_j를 통틀어 최대 두 번 나타난다.

출력

모든 대회에서 낼 수 있는 과제 수의 합의 최댓값을 한 줄에 정수로 출력한다.

예제1

  1. 예제 1

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