# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
224551 | Berted | Solar Storm (NOI20_solarstorm) | C++14 | 713 ms | 186404 KiB |
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 <iostream>
#include <vector>
#define vi vector<int>
#define fst first
#define snd second
#define pub push_back
#define ll long long
using namespace std;
const int MX = 1000001, LG = 20;
int s, n;
ll k, dst[MX] = {}, vpf[MX] = {}, sps[MX][LG] = {}, mx, rs, i1, i2, dst1, dst2;
vector<int> ans;
int main()
{
ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);
cin >> n >> s >> k;
for (int i = 1; i < n; i++) {cin >> dst[i];}
for (int i = 1; i <= n; i++) {cin >> vpf[i]; vpf[i] += vpf[i - 1];}
//i1 = i2 = 1;
for (int i = 0; i < n; i++)
{
if (i2 < i) {dst2 = dst1 = 0; i2 = i1 = i;}
else if (i1 < i) {dst1 = 0; dst2 -= dst[i]; i1 = i;}
else {dst1 -= dst[i];}
for (; i1 < n - 1 && dst1 + dst[i1 + 1] <= k; i1++)
{
dst1 += dst[i1 + 1];
if (i1 + 1 <= i2) {dst2 -= dst[i1 + 1];}
else {i2++;}
}
Compilation message (stderr)
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |