QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#137844 | #1140. Distributing Candies | yahia# | 3 | 157ms | 15156kb | C++14 | 1.7kb | 2023-08-10 18:14:38 | 2024-07-04 01:31:26 |
Judging History
answer
#include "candies.h"
#pragma GCC optimize ("O3")
#pragma GCC optimize ("unroll-loops")
#pragma GCC optimize("-Ofast")
#include <bits/stdc++.h>
using namespace std;
typedef int in;
#define double long double
#define f first
#define s second
#define pb push_back
#define pp push
#define ceil(x,y) (x/y)+(x%y!=0)*(x*y<0?0:1)
#define floor(x,y) (x/y)+(x%y!=0)*(x*y<0?-1:0)
const int MAAX=1e18;
const int MOD=1e9+7;
const int MAX=1e9;
int tree[1<<20],lazy[1<<20];
int upd(int ni,int ns,int ne,int nl,int nr,int val){
if(ns>nr||ne<nl)
return tree[ni];
if(ns>=nl&&ne<=nr){
lazy[ni]+=val;
return tree[ni]+=val;
}
int mid=ns+(ne-ns)/2;
int l=ni*2+1,r=ni*2+2;
if(lazy[ni]){
tree[l]+=lazy[ni];
tree[r]+=lazy[ni];
lazy[l]+=lazy[ni];
lazy[r]+=lazy[ni];
lazy[ni]=0;
}
return tree[ni]=max(upd(l,ns,mid,nl,nr,val),upd(r,mid+1,ne,nl,nr,val));
}
int query(int ni,int ns,int ne,int idx){
if(ns>idx||ne<idx)
return 0;
if(ns==ne)
return tree[ni];
int mid=ns+(ne-ns)/2;
int l=ni*2+1,r=ni*2+2;
if(lazy[ni]){
tree[l]+=lazy[ni];
tree[r]+=lazy[ni];
lazy[l]+=lazy[ni];
lazy[r]+=lazy[ni];
lazy[ni]=0;
}
return max(query(l,ns,mid,idx),query(r,mid+1,ne,idx));
}
vector<in> distribute_candies(vector<in> c, vector<in> l, vector<in> r, vector<in> v) {
int n = c.size(),q=l.size();
vector<in> ans(n);
if(n<=2000&&q<=2000){
for(int i=0;i<q;i++){
for(int j=l[i];j<=r[i];j++){
if(v[i]>0)
ans[j]=min(ans[j]+v[i],c[j]);
else
ans[j]=max(0,ans[j]+v[i]);
}
}
return ans;
}
for(int i=0;i<q;i++)
upd(0,0,n-1,l[i],r[i],v[i]);
for(int i=0;i<n;i++)
ans[i]=min(c[i],query(0,0,n-1,i));
return ans;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 3
Accepted
Test #1:
score: 3
Accepted
time: 0ms
memory: 4060kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 8 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 8 0 7 1 0 7 1 0 7 300000000 0 7 994967293 0 7 1 0 7 1000000000 0 7 1000000000 0 7 1000000000
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000
result:
ok 3 lines
Test #2:
score: 0
Accepted
time: 0ms
memory: 3772kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 10 283 43634 101056 10340 6009 5133 30 2 3677888 210 10 1 8 26416 2 7 -51219 2 4 17793 3 7 75426 3 7 22307 1 1 60258 3 7 -29824 0 8 24839 2 8 -60304 0 1 -26411
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 0 17223 0 0 0 0 0 0 0 0
result:
ok 3 lines
Test #3:
score: 0
Accepted
time: 1ms
memory: 3768kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 10 5895610 429664 3124 17993 758457 101345 5102817 1127952 59 81146 2000 6 7 44356 5 7 77812 1 4 -41353 1 7 -81697 2 5 -26607 4 9 84461 4 7 -44947 1 6 42622 3 5 -99951 0 1 -77687 2 6 52280 5 9 5073 1 9 67601 6 8 -6669 0 6 42368 4 6 22221 1 3 48306 3 6 -23492 ...
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 1520966 0 0 0 20922 69708 15240 91107 0 78774
result:
ok 3 lines
Test #4:
score: 0
Accepted
time: 0ms
memory: 3868kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 100 1281 616650 26929 344 1231 263 183010 1 1 46 144770 17 1735 9520 7 1 39535 8307 2 5 32940 498570 644480 10107 1645 21 443708 4 28177 2857127 2 1 1350 17506 5 36 1985 42978 24123 73 114 230034 5561405 11263 9754875 4671 44 3 8982 299 452 15 2619 9 7 6259 8...
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 0 19101 26929 344 1231 263 14968 1 1 46 40142 17 1735 9520 7 1 31323 8307 2 5 16804 87522 84360 5468 1645 21 93788 4 28177 158016 2 1 1350 17506 5 36 1985 42978 24123 73 114 230034 248401 11263 290026 4671 44 3 8982 299 452 15 2619 9 7 6259 68282 104034 17...
result:
ok 3 lines
Test #5:
score: 0
Accepted
time: 3ms
memory: 3828kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 2000 30 43135 3633 8815565 7 10656 4747283 11 1955823 368399 1933641 1354338 121930 8151786 1 2 8 3693091 433 39590 3210647 4211 49 288876 9195 37 129470 1370232 65473 2 10572 49 15282 452 8700630 9946 17 3 39005 1040244 167569 37 2 24552 115 7 117 350655 198...
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 30 43135 3633 342743 7 10656 352396 11 498344 368399 425526 434636 121930 524601 1 2 8 427431 433 39590 398492 4211 49 288876 9195 37 129470 481647 65473 2 10572 49 15282 452 865424 9946 17 3 39005 791920 135995 37 2 24552 115 7 117 319081 1988 18 846056 7...
result:
ok 3 lines
Subtask #2:
score: 0
Wrong Answer
Test #6:
score: 0
Wrong Answer
time: 157ms
memory: 15156kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 200000 11408901 370732653 37843 28 53693 15782410 103 297546 1112427 170319071 26 1 6172 11614171 431 884673599 1 3 50085 154 57 28200 145886 898969 74758 72 845768 6 69787 11 31012465 55362 253 2363145 47186217 1103 19622 594 7867 1 4299 28130 48 4689582 12 ...
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 87153 87153 37843 28 53693 406667 103 297546 766665 971468 26 1 6172 1257294 431 1536484 1 3 50085 154 57 28200 145886 898969 74758 72 845768 6 69787 11 3043755 55362 253 2363145 3459533 1103 19622 594 7867 1 4299 28130 48 4317336 12 431 123 4531465 4806 3...
result:
wrong answer 3rd lines differ - expected: '87153 87153 37843 28 53693 406...46468 9 1756 429030 247071 1629', found: '87153 87153 37843 28 53693 406...46468 9 1756 429030 247071 1629'
Subtask #3:
score: 0
Wrong Answer
Test #9:
score: 27
Accepted
time: 1ms
memory: 4072kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000...
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
ok 3 lines
Test #10:
score: -27
Wrong Answer
time: 71ms
memory: 8080kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 2000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1...
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 800398 400547 645899 0 0 0 0 0 0 0 0 0 0 0 0 259790636 259533982 659068503 659697200 641153780 639715999 638035800 637334481 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 886162017 886607057 886150331 88...
result:
wrong answer 3rd lines differ - expected: '1049802 936230 884511 204101 4...877 441728121 110945553 1330162', found: '800398 400547 645899 0 0 0 0 0...0877 441728121 110945553 980084'
Subtask #4:
score: 0
Wrong Answer
Test #16:
score: 29
Accepted
time: 0ms
memory: 3772kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 10 11 440 51 41 11 1 3 108 148 14 10 0 9 60 0 9 -9 0 9 -30 0 9 41 0 9 82 0 9 69 0 9 -79 0 9 -39 0 9 72 0 9 41
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 11 208 51 41 11 1 3 108 143 14
result:
ok 3 lines
Test #17:
score: 0
Accepted
time: 1ms
memory: 4076kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 1000 6 129 1 3 18 414 46 7 33 2 29 3 395 143 120 62 343 102 568 40 49 1 37 7 31 66 12 1 330 4 3 10 3 216 2 375 15 786 1 156 243 411 519 14 13 13 667 2 382 294 1 556 53 2 368 1 32 5 201 13 376 369 91 11 14 5 584 65 3 443 1 989 889 22 8 177 140 7 481 6 371 142 ...
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 68 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...
result:
ok 3 lines
Test #18:
score: -29
Wrong Answer
time: 25ms
memory: 7932kb
input:
lrts0z0ktpqc670i0etyqgyb45dt1dysq5ap2mzg 2000 4207825 17466917 11 20 10489 1278831 48720 43780703 37223309 28500011 76204785 631 321 1650 263304936 1382 1900 1 225756109 43424483 21143 218062355 851196097 633450 141629084 11494 1 19 12133 5908567 7 26138 1131 152662321 18 787906 312 11463 393 109417...
output:
4lpv73iykswp9e3nppi3jw2qggm5dfz29yy9nzpq OK 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
result:
wrong answer 3rd lines differ - expected: '780706 1955314 11 20 10489 659...198192 1955314 832 19064 557026', found: '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'
Subtask #5:
score: 0
Skipped
Dependency #1:
100%
Accepted
Dependency #2:
0%