Submission #472379

#TimeUsernameProblemLanguageResultExecution timeMemory
472379AbdoMoCipele (COCI18_cipele)C++17
9 / 90
1096 ms5264 KiB
#include<bits/stdc++.h> #define int long long #define ll long long #define pb push_back const int mod = 1e9+7; using namespace std; void solve(){ int n,m; cin>>n>>m; vector<int>v1,v2; for(int i=0;i<n;i++) { int x; cin>>x; v1.pb(x); } for(int i=0;i<m;i++) { int x; cin>>x; v2.pb(x); } int arr[n+m],arr2[n+m]; if(n>m) { for(int i=0;i<n;i++) { arr2[i]=v1[i]; } for(int i=0;i<m;i++) { arr[i]=v2[i]; } swap(n,m); } else { for(int i=0;i<n;i++) { arr[i]=v1[i]; } for(int i=0;i<m;i++) { arr2[i]=v2[i]; } } sort(arr,arr+n); sort(arr2,arr2+m); vector<pair<int,int>>dif; for(int i=0;i<m;i++) { dif.pb({0,i}); for(int j=0;j<n;j++) { dif[i].first=max(dif[i].first,abs(arr[j]-arr2[i])); } } bool vis[n+m+100]={}; sort(dif.rbegin(),dif.rend()); for(int i=0;i<abs(n-m);i++) { vis[dif[i].second]=1; } /*for(int i=0;i<m;i++) { //cout<<dif[i].first<<" "<<dif[i].second<<endl; cout<<vis[i]<<" "; }*/ int ans=0; for(int i=0;i<n;i++) { for(int j=0;j<m;j++) { if(vis[j])continue; ans=max(ans,abs(arr[i]-arr2[j])); vis[j]=1; break; } } cout<<ans<<endl; } int32_t main(){ int t=1; ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); //cin>>t; while(t--){solve();} return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...