Submission #589393

#TimeUsernameProblemLanguageResultExecution timeMemory
589393web선물상자 (IOI15_boxes)C++17
0 / 100
1 ms300 KiB
#include <iostream>
#include <iterator>
#include <algorithm>
#include <vector>
#include "boxes.h"
using namespace std;

long long delivery(int N, int K, int L, int p[]) {
    if(K == 1)
    {
        long long sum = 0;
        long long maxDist = L/2;
        for(int i = 0; i<N; ++i)
        {
            if(p[i] <= maxDist)
            {
                sum+= p[i];
            }
            else
            {
                sum += L - p[i];
            }
            //cout<<"new sum: "<<sum<<endl;
        }
        
        long long maxTravelled = 0;

        for(int i = 0; i<N; ++i)
        {
            if(min(p[i], L-p[i]) > maxTravelled)
                maxTravelled = min(p[i], L-p[i]);
        }
        sum -= maxTravelled;
        //cout<<"sum without last "<<sum<<endl;
        sum*=2;
        sum+=maxTravelled;
        //cout<<"final sum"<<sum<<endl;
        return sum;
    }
    
    return 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...