제출 #1055390

#제출 시각아이디문제언어결과실행 시간메모리
1055390mariaclara사탕 분배 (IOI21_candies)C++17
8 / 100
58 ms9048 KiB
#include "candies.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int,int> pii; #define all(x) x.begin(), x.end() #define sz(x) (int)x.size() #define mk make_pair #define pb push_back #define fr first #define sc second vector<int> distribute_candies(vector<int> c, vector<int> l, vector<int> r, vector<int> v) { int n = sz(c), q = sz(l); vector<int> ans(n); if(n == -1 and q <= 2000) { for(int Q = 0; Q < q; Q++) { for(int i = l[Q]; i <= r[Q]; i++) ans[i] = min(max(0, ans[i] + v[Q]), c[i]); } } else { vector<ll> p(n+1); for(int Q = 0; Q < q; Q++) { p[l[Q]] += v[Q]; p[r[Q]+1] -= v[Q]; } for(int i = 0; i < n; i++) { if(i > 0) p[i] += p[i-1]; ans[i] = min((ll)c[i], p[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...