Submission #436448

#TimeUsernameProblemLanguageResultExecution timeMemory
436448PiejanVDC사탕 분배 (IOI21_candies)C++17
11 / 100
5103 ms8800 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 = v.size(); vector<int64_t>dif(n+1,0); bool pos=true; for(auto z : v) if(z<0) { pos=false; break; } vector<int>ans(n,0); if(pos) { for(int i = 0 ; i < q ; i++) { dif[l[i]]+=v[i],dif[r[i]+1]-=v[i]; } int64_t curr=0; for(int i = 0 ; i < n ; i++) { curr+=dif[i]; ans[i]=min((int64_t)c[i],curr); } } else { for(int i = 0 ; i < q ; i++) { for(int j = l[i] ; j <= r[i] ; j++) ans[j]=(v[i]>0?min(c[j],ans[j]+v[i]):max(0,ans[j]+v[i])); } } 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...