Pagini recente » Cod sursa (job #362460) | Cod sursa (job #2864073) | Cod sursa (job #1538906) | Cod sursa (job #2064413) | Cod sursa (job #2610991)
#include <bits/stdc++.h>
using namespace std;
ifstream f("fabrica.in");
ofstream g("fabrica.out");
const int inf=(1LL<<31)-2;
int n,a,b,va[50005],vb[50005];
long long sol;
bool bsearch(int sum)
{
int cpy=n;
for(int i=1;i<=a;i++)
{
cpy-=sum/va[i];
if(cpy<=0) return true;
}
return false;
}
int main()
{
f>>n;
f>>a>>b;
for(int i=1;i<=a;i++)
f>>va[i];
for(int i=1;i<=b;i++)
f>>vb[i];
sort(va+1,va+a+1);
sort(vb+1,vb+b+1);
sol=0;
int st=1,dr=inf,mid;
while(st<=dr)
{
mid=(st+dr)/2;
if( bsearch(mid) ) sol=mid,dr=mid-1;
else st=mid+1;
}
g<<sol;
}