장난감 정리 로봇

아직 제출이 없습니다시간 제한5초메모리 제한64 MB

문제

마리타의 남동생이 거실 바닥에 장난감을 온통 어질러 놓았다. 다행히 마리타는 장난감을 치우는 특별한 로봇들을 만들어 두었고, 어떤 로봇이 어떤 장난감을 집을지 정하는 일을 당신에게 부탁했다.

장난감은 모두 TT개이며, ii번 장난감은 정수 무게 WiW_i와 정수 크기 SiS_i를 가진다. 로봇은 연약한 로봇과 작은 로봇 두 종류가 있다.

  • 연약한 로봇은 모두 AA개다. ii번 연약한 로봇에는 무게 제한 XiX_i가 있어, 무게가 XiX_i보다 작은(즉 XiX_i 미만인) 장난감만 옮길 수 있다. 크기는 상관없다.
  • 작은 로봇은 모두 BB개다. ii번 작은 로봇에는 크기 제한 YiY_i가 있어, 크기가 YiY_i보다 작은(즉 YiY_i 미만인) 장난감만 옮길 수 있다. 무게는 상관없다.

로봇 하나가 장난감 하나를 치우는 데 1분이 걸린다. 여러 로봇은 서로 다른 장난감을 동시에 치울 수 있고, 한 로봇은 여러 개의 장난감을 1분에 하나씩 차례로 치울 수 있다.

모든 장난감을 치울 수 있는지 판단하고, 가능하다면 모든 장난감을 치우는 데 걸리는 가장 짧은 시간(분)을 구하라.

입력

첫째 줄에 연약한 로봇의 수 AA, 작은 로봇의 수 BB, 장난감의 수 TT가 공백으로 구분되어 주어진다.

둘째 줄에 연약한 로봇 AA개의 무게 제한 X0,X1,,XA1X_0, X_1, \dots, X_{A-1}이 공백으로 구분되어 주어진다. A=0A = 0이면 이 줄은 비어 있다.

셋째 줄에 작은 로봇 BB개의 크기 제한 Y0,Y1,,YB1Y_0, Y_1, \dots, Y_{B-1}이 공백으로 구분되어 주어진다. B=0B = 0이면 이 줄은 비어 있다.

이어지는 TT개의 줄에 각 장난감의 무게 WiW_i와 크기 SiS_i가 한 줄에 하나씩 주어진다.

출력

모든 장난감을 치우는 데 걸리는 가장 짧은 시간(분)을 한 줄에 출력한다. 모든 장난감을 치우는 것이 불가능하면 1-1을 출력한다.

제한

  • 1T1,000,0001 \le T \le 1{,}000{,}000
  • 0A,B50,0000 \le A, B \le 50{,}000, 1A+B1 \le A + B
  • 1Xi,Yi,Wi,Si2,000,000,0001 \le X_i, Y_i, W_i, S_i \le 2{,}000{,}000{,}000
  • A=0A = 0 또는 B=0B = 0이면, 해당하는 줄(둘째 또는 셋째 줄)은 비어 있다.