P10147 60分
#include<bits/stdc++.h>
using namespace std;
long long o[100001],p[100001];
long long a,b,c;
bool check(long long x)
{
long long sum=0;
for(int i=0;i<a;i++)
{
sum+=upper_bound(p,p+b,x-o)-p;
}
return sum>=c;
}
int main()
{
cin>>a>>b>>c;
for(int i=0;i<a;i++)
{
cin>>o;
}
for(int i=0;i<b;i++)
{
cin>>p;
}
sort(p,p+a);
long long l=0,r=INT_MAX,mid;
while(l<=r)
{
mid=l+(r-l)/2;
if(check(mid))
{
r=mid-1;
}
else
{
l=mid+1;
}
}
cout<<l<<endl;
return 0;
}