Submission #1206690

#TimeUsernameProblemLanguageResultExecution timeMemory
1206690tkm_algorithmsDistributing Candies (IOI21_candies)C++20
8 / 100
61 ms9032 KiB
/**
*    In the name of Allah
*    We are nothing and you're everything
**/
#include <bits/stdc++.h>
#include "candies.h" 
using namespace std;
using ll = long long;
using ull = uint64_t;
 
#define all(x) begin(x), end(x)
#define sz(x) (int)(x).size()
//#define int long long
 
const char nl = '\n';
const int N = 2e5+1;
const ll inf = 0x3f3f3f3f3f3f3f3fll;
const int mod = 1e9+7;

std::vector<int> distribute_candies(vector<int> c, vector<int> l,
                                    vector<int> r, vector<int> v) {
    int n = sz(c), q = sz(r);
    vector<int> s(n);
    vector<ll> p(n);
    for (int i = 0; i < q; ++i) {
		if (r[i] != n-1)p[r[i]+1] -= (ll)v[i];
		p[l[i]] += (ll)v[i];
	}
	
	//int sum = 0;
	for (int i = 0; i < n; ++i) {
		if (i > 0)p[i] += p[i-1];
		//p[i] = min(p[i], c[i]);
		s[i] = (int)min(max(p[i], 0ll), (ll)c[i]);
		
	}
    return s;
}
#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...