Submission #1053203

#TimeUsernameProblemLanguageResultExecution timeMemory
1053203MercubytheFirstDistributing Candies (IOI21_candies)C++17
8 / 100
55 ms13032 KiB
#include "candies.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;

std::vector<signed> distribute_candies(std::vector<signed> c, std::vector<signed> l,
                                    std::vector<signed> r, std::vector<signed> v) {
    ll n = c.size();
    vector<ll> diff(n + 1);
    vector<signed> ans(n);
    ll Q = l.size();
    assert(l.size() == r.size() and v.size() == l.size());
    for(ll i = 0; i < Q; ++i) {
        diff[l[i]] += v[i];
        diff[r[i] + 1] -= v[i];
    }
    ll sum = 0;
    for(ll i = 0; i < n; ++i) {
        // cout << diff[i] << ' ';
        sum += diff[i];
        ans[i] = min(sum, (ll)c[i]);
    }
    // cout << endl;
    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...