Problem:
You are given two arrays a and b of positive integers, with length n and m respectively.
Let c be an n×m matrix, where ci,j=ai⋅bj.
You need to find a subrectangle of the matrix c such that the sum of its elements is at most x, and its area (the total number of elements) is the largest possible.
Formally, you need to find the largest number s such that it is possible to choose integers x1,x2,y1,y2 subject to 1≤x1≤x2≤n, 1≤y1≤y2≤m, (x2−x1+1)×(y2−y1+1)=s, and ∑i=x1x2∑j=y1y2ci,j≤x.
Input Format:
The first line contains two integers n and m (1≤n,m≤2000).
The second line contains n integers a1,a2,…,an (1≤ai≤2000).
The third line contains m integers b1,b2,…,bm (1≤bi≤2000).
The fourth line contains a single integer x (1≤x≤2⋅109).
Output Format:
If it is possible to choose four integers x1,x2,y1,y2 such that 1≤x1≤x2≤n, 1≤y1≤y2≤m, and ∑i=x1x2∑j=y1y2ci,j≤x, output the largest value of (x2−x1+1)×(y2−y1+1) among all such quadruplets, otherwise output 0.
Note:
Matrix from the first sample and the chosen subrectangle (of blue color):
Matrix from the second sample and the chosen subrectangle (of blue color):