This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "meetings.h"
#include <iostream>
using namespace std;
std::vector<long long> minimum_costs(std::vector<int> H, std::vector<int> L,
std::vector<int> R) {
int Q = L.size();
std::vector<long long> C(Q);
for (int j = 0; j < Q; ++j) {
//cout << "L: " << L[j] << "R: " << R[j] << endl;
// find the minimum index and minimum size for each [L,R]
int minSize = 1000000000;
int minIndex = -1;
for (int i = L[j]; i <= R[j]; ++i)
{
if (H[i] <= minSize)
{
minIndex = i;
minSize = H[i];
}
}
// cout << "MinIndex: " << minIndex << "minSize: " << minSize << endl;
for (int i = L[j]; i <= R[j]; ++i)
{
//cout << "indexCalculation: " << i << "sizeHeight: " << H[i] << endl;
int runMax = 0;
if (i <= minIndex)
{
for (int k = i; k <= minIndex; ++k)
{
//cout << "( " << H[k] << " , " << minSize << ")"<< endl;
runMax = max(H[k], runMax);
}
}
else
{
for (int k = minIndex; k <= i; ++k)
{
//cout << "( " << H[k] << " , " << minSize << ")"<< endl;
runMax = max(H[k], runMax);
}
}
// cout << "Max for " << i << " : " << runMax << endl;
C[j] += runMax;
}
}
return C;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |