제출 #1346285

#제출 시각아이디문제언어결과실행 시간메모리
1346285nathlol2Boxes with souvenirs (IOI15_boxes)C++20
100 / 100
345 ms196108 KiB
#include "boxes.h"
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const ll INF = 4e18;

ll delivery(int n, int k, int l, int p[]){
    auto f = [&](ll x, ll y){
        return min((ll)l, min(y * 2, (l - x) * 2));
    };
    vector<ll> dp(n + 1, INF), dpr(n + 2, INF);
    dp[0] = 0;
    for(int i = 1;i<=n;i++){
        dp[i] = dp[max(0, i - k)] + min(l, 2 * p[i - 1]);
    }
    dpr[n + 1] = 0;
    for(int i = n;i>=1;i--){
        dpr[i] = dpr[min(n + 1, i + k)] + min(l, 2 * (l - p[i - 1]));
    }
    ll ans = INF;
    for(int i = 0;i<=n;i++){
        ans = min(ans, dp[i] + dpr[i + 1]);
    }
    return ans;
}
#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...