제출 #803138

#제출 시각아이디문제언어결과실행 시간메모리
803138vjudge1사탕 분배 (IOI21_candies)C++17
11 / 100
82 ms9276 KiB
#include "candies.h" #include <bits/stdc++.h> using namespace std; vector<int> distribute_candies(vector<int> c, vector<int> l, vector<int> r, vector<int> v) { int n = c.size(), q = l.size(); if((long long)n*q < 5000000) { vector<int> s(n); for(int i = 0; i < q; i++) for(int j = l[i]; j <= r[i]; j++) if(v[i]>0) s[j] = min(c[j], s[j]+v[i]); else s[j] = max(0, s[j]+v[i]); return s; } vector<long long> s(n+1); for(int i = 0; i < q; i++) s[l[i]]+=v[i], s[r[i]+1]-=v[i]; partial_sum(s.begin(), s.end(), s.begin()); s.pop_back(); vector<int> s2; for(int i = 0; i < n; i++) s2.push_back(min(s[i], (long long)c[i])); return s2; }
#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...