Submission #996916

#TimeUsernameProblemLanguageResultExecution timeMemory
996916TgX_2Boxes with souvenirs (IOI15_boxes)C++17
10 / 100
1 ms2396 KiB
/*-----------------------------
        Author : TgX.2
       11Ti - K28 - CHV
-----------------------------*/
 
#ifndef TGX
    #include "boxes.h"
#endif // !TGX
 
 
#include <bits/stdc++.h>
using namespace std;
 
#define FOR(i,a,b) for(int i=(a), _b=(b);i<=_b;++i)
#define FORD(i,a,b) for(int i=(a), _b=(b);i>=_b;--i)
#define FORC(i,a,b,c) for(int i=(a), _b=(b), _c=(c);i<=_b;i+=_c)
#define FORSq(i,a,b) for(int i=(a), _b=(b);i*i<=_b;++i)
#define FORSt(i,s) for(int i=0, _s=(int)(s.size());i<_s;++i)
 
#define fi first
#define se second
#define pb push_back
#define mp make_pair
#define ers erase
#define ins insert
#define rvs reverse
 
#define len(x) (int)((x).size())
#define all(x) (x).begin(), (x).end()
#define alln(x,n) (x)+1, (x)+1+(n)
 
#define _ <<" "<<
#define __ << "\n"
#define ___ << " "
 
#define intmax 1e9
#define intmin -1e9
#define llongmax 1e18
#define llongmin -1e18
#define memo(a, val) memset((a), (val), sizeof((a)))
 
template<typename T1, typename T2> bool mini(T1 &a, T2 b)
    {if(a>b) a=b; else return 0; return 1;}
template<typename T1, typename T2> bool maxi(T1 &a, T2 b)
    {if(a<b) a=b; else return 0; return 1;}
 
const int maxn = 1e7 + 7;
int b[maxn], c[maxn];
long long delivery(int n, int k, int l, int a[]) {
//    sort(alln(a, n));
 
    FOR(i, 1, n) {
        b[i] = min(l, a[i - 1] * 2);
        if (i > k)
            b[i] += b[i - k];
    }
 
    int ans = b[n];
 
    FORD(i, n, 1) {
        c[i] = min(l, (l - a[i - 1]) * 2);
        if (i + k <= n)
            c[i] += c[i + k];
        mini(ans, b[i - 1] + c[i]);
    }
  
    return ans;
}
#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...