만드는 중입니다

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

토지세

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

요약
연속된 행 구간과 열 구간을 골라 높이와 너비로 가중한 행과 열 지급액 합이 가장 큰 직사각형을 구합니다.
난이도

어려움10점 중 9점

유형
분할 정복, 기하, 누적 합, 구간
정답자
아직 제출이 없습니다

문제

상인 바이타자르가 부동산 시장에서 큰돈을 벌겠다는 마음으로 바이트고르드에 도착했습니다. 그는 도시의 한 구역을 사들여 그 안의 집들을 임대할 계획입니다. 다만 가장 큰 걱정거리는 세금입니다.

바이트고르드의 거리는 규칙적인 격자를 이룹니다. 서쪽에서 동쪽으로 뻗은 거리가 n+1n + 1개, 남쪽에서 북쪽으로 뻗은 거리가 m+1m + 1개 있습니다. 평면 지도에서 앞의 거리들을 가로 거리, 뒤의 거리들을 세로 거리라고 부릅니다. 모든 가로 거리는 모든 세로 거리와 교차하므로, 도시에는 사방이 거리로 둘러싸인 구역, 즉 블록이 n⋅mn \cdot m개 생깁니다. 각 블록의 변의 길이는 바이트미터 단위의 정수이며, 크기가 k×lk \times l인 블록은 k⋅lk \cdot l개의 주거 단위로 나뉩니다.

어느 날 시장은 토지세를 도입하기로 했습니다. 계산을 간단히 하려고, 시장은 nn개의 가로 블록 줄 각각에서 세율을 같게 정했습니다. 정확히 말하면, ii번째 블록 줄(1≤i≤n1 \le i \le n)에 세율 aia_i를 정하고 그 줄의 높이가 xix_i이면, 그 줄의 모든 주거 단위는 ai/xia_i / x_i의 세금을 냅니다. 어떤 줄에 문화재 성격의 건물이 많으면, 시장은 세금 대신 그 유지를 위한 보조금을 시 예산에서 지급했고, 보조금의 비율도 줄마다 일정했습니다. 따라서 세금이 부과되는 줄은 ai<0a_i < 0, 보조금이 지급되는 줄은 ai≥0a_i \ge 0으로 봅니다.

그런데 시장은 이 계획을 시의회와 상의하지 않았고, 시의회도 같은 토지세를 독자적으로 떠올렸습니다. 공교롭게도 시의회는 블록의 세로 열에 세금을 매기기로 했으며, 시장과 완전히 같은 방식을 썼습니다. 너비가 yjy_j인 열에 세율 bjb_j를 정하면 그 열의 모든 단위는 bj/yjb_j / y_j의 세금을 냅니다. 시의회 역시 문화재를 고려하여 때로는 세금 대신 보조금을 지급했으므로, bj<0b_j < 0이면 세금, bj≥0b_j \ge 0이면 보조금입니다.

시장과 시의회는 거의 같은 시기에 결의안을 발표했습니다. 정치적 다툼을 피하려고 둘은 타협했습니다. 한 주거 단위의 세율은 시장이 정한 세율과 시의회가 정한 세율의 합으로 합니다. 그래서 ii번째 줄, jj번째 열의 블록에 속한 단위의 합산 세율은 ai/xi+bj/yja_i / x_i + b_j / y_j입니다.

바이타자르는 어떤 직사각형 영역 안의 모든 주거 단위를 사고 싶어 합니다. 단, 그는 블록 전체만 살 수 있으므로, 그의 영역은 연속된 줄 구간과 연속된 열 구간으로 이루어지며 비어 있으면 안 됩니다. 한 영역의 보조금과 세금의 합계는 그 영역 안 모든 주거 단위의 합산 세율을 전부 더한 값입니다. 이 합계가 가능한 한 커지는 영역을 찾도록 바이타자르를 도와주세요. 이 합계는 항상 정수입니다.

입력

첫째 줄에 정수 nn이 주어집니다. 둘째 줄에 nn개의 정수 aia_i가 주어집니다. 셋째 줄에 nn개의 양의 정수 xix_i가 주어집니다. 넷째 줄에 정수 mm이 주어집니다. 다섯째 줄에 mm개의 정수 bjb_j가 주어집니다. 여섯째 줄에 mm개의 양의 정수 yjy_j가 주어집니다.

nn과 mm은 1≤n,m≤200 0001 \le n, m \le 200\,000을 만족합니다. 수열 aia_i와 bjb_j의 원소는 −10 000≤ai,bj≤10 000-10\,000 \le a_i, b_j \le 10\,000을 만족합니다. 음수 값은 각각 시장과 시의회가 정한 세율을, 음이 아닌 값은 문화재 유지 보조금을 뜻합니다. 블록 줄의 높이와 열의 너비인 xix_i, yjy_j의 원소는 1≤xi,yj≤10 0001 \le x_i, y_j \le 10\,000을 만족합니다.

출력

직사각형 블록 영역에서 얻을 수 있는 보조금과 세금 합계의 최댓값을 정수 하나로 출력합니다.

힌트

그림 왼쪽의 수들은 블록 줄의 세율(수열 aia_i)을, 그림 아래의 수들은 블록 열의 세율(수열 bjb_j)을 나타냅니다. 각 단위 정사각형 안의 수는 그 블록의 합산 세율입니다. 강조된 직사각형은 바이타자르가 투자해야 하는 영역을 보여 줍니다.

예제3

  1. 예제 1

    입력
    5
    -3 0 1 -3 1
    1 3 1 3 1
    3
    -3 -1 1
    3 1 2
    
    예상 출력
    6
    
  2. 예제 2

    입력
    1
    7
    2
    1
    5
    3
    
    예상 출력
    31
    
  3. 예제 3

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