Submission #422276

#TimeUsernameProblemLanguageResultExecution timeMemory
422276jlallas384Boxes with souvenirs (IOI15_boxes)C++17
35 / 100
1 ms300 KiB
#include <bits/stdc++.h>
#include "boxes.h"
using namespace std;
using ll = long long;


ll delivery(int n, int k, int l, int pi[]) {
    vector<int> p(n);
    for(int i = 0; i < n; i++){
        p[i] = pi[i];
    }
    ll ans = 0;
    int rev = 0,cur = 0,lft = k;
    for(int x: p){
        if(lft == 0){
            ans += min(cur,l - cur);
            lft = k;
            cur = 0;
        }
        if(!rev && cur != 0 && cur + l - x <= x - cur){
            rev = 1;
            ans += cur;
            cur = 0;
            lft = k;
        }
        lft--;
        ans += min(x - cur, cur + l - x);
        cur = x;
    }
    return ans + min(l - cur,cur);
}
#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...