Submission #467760

#TimeUsernameProblemLanguageResultExecution timeMemory
467760Carmel_Ab1Boxes with souvenirs (IOI15_boxes)C++17
10 / 100
2071 ms304 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef vector<ll>vl;
#include "boxes.h"
#define all(x) x.begin(),x.end()
//#include "grader.cpp"
ll dst(ll x,ll y,ll l){
    return min(abs(x-y),x+abs(l-1-y)+1);
}
ll delivery(int N, int K, int L, int P[]) {
    ll n=N,k=K,l=L;
    vl p(n);
    for(int i=0; i<n; i++)
        p[i]=P[i];

    ll ans=1e18;
    for(int i=0; i<n ;i++){
        ll cur=0,has=0,sum=0;
        for(int j=0; j<=i; j++) {
            if((j+1)%k==0)
                sum+=2*p[j];
        }

        for(int j=i+1; j<n; j++){
            has++;
            if(has%k==0)
                sum+=2*(l-p[j]);
        }
        ans=min(ans,sum);
    }

    for(int i=0; i<n; i++){
        ll cur=0,has=0,sum=0;
        for(int j=0; j<=i; j++) {
            has++;
            if(has%k==0)
                sum+=2*p[j];
        }
        for(int j=i; has%k ; j++,has++){
            has++;
        }
        sum+=l;
        for(int j=has+1; j<n; j++){
            has++;
            if(has%k==0)
                sum+=2*(l-p[j]);
        }
        ans=min(ans,sum);

    }
    return ans;
}

Compilation message (stderr)

boxes.cpp: In function 'll delivery(int, int, int, int*)':
boxes.cpp:19:12: warning: unused variable 'cur' [-Wunused-variable]
   19 |         ll cur=0,has=0,sum=0;
      |            ^~~
boxes.cpp:44:22: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
   44 |         for(int j=has+1; j<n; j++){
      |                   ~~~^~
boxes.cpp:34:12: warning: unused variable 'cur' [-Wunused-variable]
   34 |         ll cur=0,has=0,sum=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...