Submission #134581

#TimeUsernameProblemLanguageResultExecution timeMemory
134581tinjyuBoxes with souvenirs (IOI15_boxes)C++14
0 / 100
10 ms380 KiB
#include "boxes.h"
#include <iostream>
long long int n,k,l,sum[10000005][2];
using namespace std;
long long delivery(int N, int K, int L, int p[]) {
    int mid;
    n=N;
    k=K;
    l=L;
    for(int i=0;i<n;i++)
    {
        if(p[i]<=l/2 && l/2<=p[i+1])
        {
            mid=p[i];
            break;
        }
    }
    long long tmp=0;
    for(int i=mid;i>=0;i--)
    {
        if((i-mid)%k==0)tmp+=p[i];
        sum[i][0]=tmp;
    }
    for(int i=mid;i<n;i++)
    {
        if((i-mid)%k==0)tmp+=p[i];
        sum[i][1]=tmp;
    }
    long long int ans=9999999999999;
    for(int i=mid;i>=mid-k && i>=0;i--)
    {

        tmp=sum[i][0];
        if(i+k<n)tmp+=sum[i+k][1];
        tmp+=l;
        ans=min(tmp,ans);
    }
    return ans;
}

Compilation message (stderr)

boxes.cpp: In function 'long long int delivery(int, int, int, int*)':
boxes.cpp:6:9: warning: 'mid' may be used uninitialized in this function [-Wmaybe-uninitialized]
     int mid;
         ^~~
#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...