# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
150867 | PedroBigMan | Cipele (COCI18_cipele) | C++14 | 1070 ms | 6128 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <iostream>
#include <vector>
#include <cmath>
#include <algorithm>
#include <string>
using namespace std;
typedef long long int ll;
typedef unsigned long long int ull;
typedef long double ld;
#define REP(i,a,b) for(ll i=a; i<b; i++)
#define pb push_back
#define mp make_pair
#define pl pair<ll,ll>
#define ff first
#define ss second
#define INF ((ll) pow(2,63) -1)
ll insig;
#define In(vecBRO, LENBRO) REP(IBRO,0,LENBRO) {cin>>insig; vecBRO.pb(insig);}
void Out(vector<ll> x) {REP(i,0,x.size()) {cout<<x[i]<<" ";} cout<<endl;}
vector<ll> a,b,ind,ind1,ind2; ll N,M;
ll Check(vector<ll> sub)
{
ll ans=0;
REP(i,0,N)
{
ans=max(ans,abs(a[i]-b[sub[i]]));
}
return ans;
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cin>>N>>M; if(N<=M) {In(a,N); In(b,M);} else {In(b,N); In(a,M);}
ll x=N; ll y=M; N=min(x,y); M=max(x,y);
sort(a.begin(),a.end()); sort(b.begin(),b.end());
ll ne;
REP(i,0,N)
{
ne = (ll) (lower_bound(b.begin(),b.end(),a[i]) - b.begin());
if(ne==0)
{
ind.pb(0);
}
else if(ne==M)
{
ind.pb(M-1);
}
else
{
if(abs(a[i]-b[ne])>abs(a[i]-b[ne-1])) {ind.pb(ne-1);}
else {ind.pb(ne);}
}
}
ll ans;
REP(i,0,ind.size()-1)
{
if(ind[i]!=ind[i+1]) {continue;}
ind1.clear(); ind2.clear(); ind1=ind; ind2=ind;
ll cur=i;
while(ind1[cur]==ind1[cur+1])
{
ind1[cur]--;
cur--;
}
cur=i+1;
while(ind2[cur]==ind2[cur-1])
{
ind2[cur]++;
cur++;
}
if(Check(ind1)>Check(ind2)) {ind=ind2;}
else {ind=ind1;}
}
cout<<Check(ind)<<endl;
return 0;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |