답안 #169143

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
169143 2019-12-18T16:09:21 Z egekabas Simfonija (COCI19_simfonija) C++14
77 / 110
40 ms 4984 KB
#include <bits/stdc++.h>
#define ff first
#define ss second
#define pb push_back
#define mp make_pair
using namespace std;
typedef long long   ll;
typedef unsigned long long   ull;
typedef long double ld;
typedef pair<ll, ll>    pll;
typedef pair<ull, ull>    pull;
typedef pair<ll, ll>  pii;
typedef pair<ld, ld>  pld;
ll n, k;
ll a[100009];
ll b[100009];
ll val[100009];;
ll pre[100009];
ll ans = 1e18;
int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    
    //freopen("in.txt", "r", stdin);
    //freopen("out.txt", "w", stdout);
    
    cin >> n >> k;
    for(ll i = 1; i <= n; ++i)
        cin >> a[i];
    for(ll i = 1; i <= n; ++i)
        cin >> b[i];
    for(ll i = 1; i <= n; ++i)
        val[i] = (a[i]-b[i]);
    sort(val+1, val+1+n);
    for(ll i = 1; i <= n; ++i)
        pre[i] = val[i] + pre[i-1];    
    for(ll beg = 0; beg <= k; ++beg){
        ll fin = k-beg;
        ll idx = (beg+1+n-fin)/2;
        ll av;
        if((n-k)%2)
            av = val[idx];
        else 
            av = (val[idx]+val[idx+1])/2;
        ll cur = ((pre[n-fin]-pre[idx-1]) - av*((n-fin)-(idx-1)));
        cur += av*(idx-1-beg)-(pre[idx-1]-pre[beg]);
        ans = min(ans, cur);
    }
    cout << ans << "\n";
}
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 38 ms 3544 KB Output is correct
2 Correct 36 ms 4984 KB Output is correct
3 Correct 33 ms 4856 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 37 ms 3448 KB Output is correct
2 Correct 35 ms 4984 KB Output is correct
3 Correct 33 ms 4936 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 38 ms 3512 KB Output is correct
2 Correct 35 ms 4856 KB Output is correct
3 Correct 33 ms 4856 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 26 ms 3448 KB Output is correct
2 Correct 33 ms 4856 KB Output is correct
3 Correct 34 ms 4984 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 39 ms 3448 KB Output is correct
2 Correct 38 ms 4976 KB Output is correct
3 Correct 40 ms 4924 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 32 ms 3452 KB Output is correct
2 Correct 34 ms 3448 KB Output is correct
3 Correct 37 ms 4984 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 38 ms 3448 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 37 ms 3448 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 33 ms 3448 KB Output is correct
2 Correct 35 ms 4904 KB Output is correct
3 Incorrect 38 ms 4848 KB Output isn't correct