I am back.
好长时间没写了。
这题看题解具体思路不清晰先码
/*
ID: jinbo wu
TASK: job
LANG:C++
*/
#include<bits/stdc++.h>
using namespace std;
#define inf 0x3f3f3f3f
int ta[1100],tb[1100],t1[1100],t2[1100];
int a[1100],b[1100];
int main()
{
freopen("job.in","r",stdin);
freopen("job.out","w",stdout);
int n,m,k;
int t;
cin>>n>>m>>k;
for(int i=1;i<=m;i++)
cin>>a[i];
for(int i=1;i<=k;i++)
cin>>b[i];
int min;
for(int i=1;i<=n;i++)
{
min=inf;
for(int j=1;j<=m;j++)
{
if(ta[j]+a[j]<min)
{
min=ta[j]+a[j];
t=j;
}
}
ta[t]=t1[i]=min;
}
cout<<min<<" ";
for(int i=1;i<=n;i++)
{
min=inf;
for(int j=1;j<=k;j++)
{
if(tb[j]+b[j]<min)
{
min=tb[j]+b[j];
t=j;
}
}
tb[t]=t2[i]=min;
}
sort(t1+1,t1+n+1);
sort(t2+1,t2+n+1);
int ans=0;
for(int i=1;i<=n;i++)
{
if(ans<t1[i]+t2[n-i+1])
ans=t1[i]+t2[n-i+1];
}
cout<<ans<<endl;
}