Submission #1326833

#TimeUsernameProblemLanguageResultExecution timeMemory
1326833Faisal_SaqibSimfonija (COCI19_simfonija)C++20
44 / 110
48 ms2360 KiB
#include <iostream> #include <vector> #include <algorithm> using namespace std; typedef long long ll; int main() { ios::sync_with_stdio(0); cout.tie(0); cin.tie(0); int n,k; cin>>n>>k; int a[n],b[n],c[n]; for(int i=0;i<n;i++)cin>>a[i]; ll ans=0,sm1=0,sm2=0; vector<int> pos,neg; for(int i=0;i<n;i++)cin>>b[i],c[i]=a[i]-b[i],ans+=abs(c[i]); for(int i=0;i<n;i++) { if(c[i]<0) { neg.push_back(c[i]); } else { pos.push_back(c[i]); } } sort(c,c+n); sort(begin(pos),end(pos)); sort(begin(neg),end(neg)); vector<int> tr; int sz=pos.size(); if(sz) { tr.push_back(-pos[sz/2]); } tr.push_back(-c[n/2]); tr.push_back(-c[(n-k)/2]); sz=neg.size(); if(sz) { tr.push_back(-neg[sz/2]); } for(auto x:tr) { for(int i=0;i<n;i++) { c[i]=abs((a[i]+x)-b[i]); } sort(c,c+n); ll cur=0; for(int i=0;i<n-k;i++) { cur+=c[i]; } ans=min(ans,cur); } cout<<ans<<endl; }
#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...