Pagini recente » Cod sursa (job #2119438) | Cod sursa (job #2233489) | Cod sursa (job #1029395) | Cod sursa (job #2580868) | Cod sursa (job #2402083)
#include<fstream>
#include<algorithm>
#include<queue>
using namespace std;
ifstream fin("fabrica.in");
ofstream fout("fabrica.out");
int l,n,a,b,m,timp,i,ta[50001],tb[50001],v[100001],u[100001],j,sol;
priority_queue<pair<int,int> ,vector<pair<int,int> >,greater<pair<int,int> > >p,q;
int main()
{
fin>>n>>a>>b;m=0;
for(i=1;i<=a;i++){fin>>ta[i];p.push(make_pair(ta[i],i));}
for(i=1;i<=b;i++){fin>>tb[i];q.push(make_pair(tb[i],i));}
for(j=1;j<=n;j++)
{
timp=p.top().first;i=p.top().second;p.pop();
v[j]=timp;timp+=ta[i];
p.push(make_pair(timp,i));
}
fout<<v[n]<<" ";
for(j=n;j>=1;j--)
{
timp=q.top().first;i=q.top().second;q.pop();
u[j]=timp;timp+=tb[i];
q.push(make_pair(timp,i));
}
for(i=1;i<=n;i++) sol=max(v[i]+u[i],sol);
fout<<sol;
return 0;
}