Submission #435745

# Submission time Handle Problem Language Result Execution time Memory
435745 2021-06-23T16:30:17 Z illyakr Distributing Candies (IOI21_candies) C++17
0 / 100
102 ms 8124 KB
#include <bits/stdc++.h>
#include "candies.h"
using namespace std;

int n, q;
bool scbl = true;
int ans[201010];
std::vector<int> distribute_candies(std::vector<int> c, std::vector<int> l,
                                    std::vector<int> r, std::vector<int> v) {
    n = c.size(); q = v.size();
    vector<int> res(n - 1);
    for (int i = 0; i < q; i++)
        if (v[i] < 0){scbl = false;break;}

    if (n * q <= 100000000) {
        for (int i = 0; i < q; i++) {
            for (int j = l[i]; j <= r[i]; j++) {
                res[j] += v[i];
                if (res[j] < 0)res[j] = 0;
                else if (res[j] > c[j])res[j] = c[j];
            }
        }
        return res;
    }
    if (scbl) {
        for (int i = 0; i < q; i++) {
            ans[l[i]] += v[i];
            ans[r[i] + 1] -= v[i];
        }
        for (int i = 1; i < n; i++)
            ans[i] += ans[i - 1];
        for (int i = 0; i < n; i++)ans[i] = min(ans[i], c[i]);
        for (int i = 0; i < n; i++)res[i] = ans[i];
        return res;
    }
    exit(1);
}

/**
3
10 15 13
2
0 2 20
0 1 -11


0 4 13
*/
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 102 ms 8124 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -