| Task: | Kaaleppi's run |
| Sender: | Kyynel ;_; |
| Submission time: | 2016-10-04 18:31:32 +0300 |
| Language: | C++ |
| Status: | READY |
| Result: | RUNTIME ERROR |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.25 s | details |
| #2 | ACCEPTED | 0.49 s | details |
| #3 | ACCEPTED | 0.39 s | details |
| #4 | RUNTIME ERROR | 0.27 s | details |
| #5 | RUNTIME ERROR | 0.27 s | details |
| #6 | ACCEPTED | 0.21 s | details |
| #7 | ACCEPTED | 0.32 s | details |
| #8 | ACCEPTED | 0.09 s | details |
| #9 | RUNTIME ERROR | 0.28 s | details |
| #10 | RUNTIME ERROR | 0.28 s | details |
| #11 | RUNTIME ERROR | 0.28 s | details |
| #12 | RUNTIME ERROR | 0.28 s | details |
| #13 | RUNTIME ERROR | 0.31 s | details |
| #14 | RUNTIME ERROR | 0.27 s | details |
| #15 | RUNTIME ERROR | 0.34 s | details |
| #16 | RUNTIME ERROR | 0.25 s | details |
| #17 | RUNTIME ERROR | 0.29 s | details |
| #18 | RUNTIME ERROR | 0.28 s | details |
| #19 | RUNTIME ERROR | 0.29 s | details |
| #20 | RUNTIME ERROR | 0.29 s | details |
| #21 | RUNTIME ERROR | 0.23 s | details |
| #22 | RUNTIME ERROR | 0.24 s | details |
| #23 | RUNTIME ERROR | 0.23 s | details |
| #24 | RUNTIME ERROR | 0.28 s | details |
| #25 | RUNTIME ERROR | 0.33 s | details |
| #26 | RUNTIME ERROR | 0.29 s | details |
| #27 | RUNTIME ERROR | 0.30 s | details |
| #28 | RUNTIME ERROR | 0.30 s | details |
| #29 | RUNTIME ERROR | 0.28 s | details |
| #30 | RUNTIME ERROR | 0.30 s | details |
Code
#include <bits/stdc++.h>
#define ll long long
#define ld long double
#define N (1<<17)
using namespace std;
ll v[2 * N];
ll w[2 * N];
void setv (int k, ll n) {
k += N;
w[k] = v[k] = n;
for (k /= 2; k >= 1; k /= 2) {
v[k] = v[2 * k] + v[2 * k + 1];
w[k] = max(w[2 * k], w[2 * k + 1]);
}
}
ll sum (int a, int b) {
a += N;
b += N;
ll s = 0;
while (a <= b) {
if (a % 2) s += v[a++];
if (b % 2 == 0) s += v[b--];
a /= 2; b /= 2;
}
return s;
}
void rage (int a, int b, int i, int l, int r, ll m) {
if (b < l || a > r) return;
//cout<<"QUERY1 "<<a<<" "<<b<<" "<<i<<" "<<w[i]<<endl;
if (w[i] < m) return;
//cout<<"QUERY2 "<<a<<" "<<b<<endl;
if (a == b) {
//cout<<"SET "<<a<<" to "<<v[a + N]<<" % "<<m<<endl;
setv(a, v[a + N] % m);
return;
}
int q = r - l + 1;
q /= 2;
rage(a, min(r - q, b), 2 * i, l, r - q, m);
rage(max(a, l + q), b, 2 * i + 1, l + q, r, m);
}
int main () {
int n, q;
cin>>n>>q;
for (int i = 0; i < n; i++) {
ll x;
cin>>x;
setv(i, x);
}
for (int i = 0; i < q; i++) {
int t;
cin>>t;
if (t == 1) {
ll a, b, c;
cin>>a>>b>>c;
rage(a - 1, b - 1, 1, 0, N - 1, c);
} else {
ll a, b;
cin>>a>>b;
cout<<sum(a - 1, b - 1)<<endl;
}
}
}Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 89384 130887 681692778 714636916 957747794 ... |
| correct output |
|---|
| 3568050627345 4840079633895 4979742617229 3278015536236 8227531490884 ... |
| user output |
|---|
| 3568050627345 4840079633895 4979742617229 3278015536236 8227531490884 ... |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 110132 199724 847570814 404978775 106367318 ... |
| correct output |
|---|
| 1427981161528 6256316123063 1076159707539 1525408287745 12452883393272 ... |
| user output |
|---|
| 1427981161528 6256316123063 1076159707539 1525408287745 12452883393272 ... |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 87738 181088 562855988 84781032 926253527 7... |
| correct output |
|---|
| 5716947015138 14424560752621 3616168262601 807226877121 83465638349 ... |
| user output |
|---|
| 5716947015138 14424560752621 3616168262601 807226877121 83465638349 ... |
Test 4
Verdict: RUNTIME ERROR
| input |
|---|
| 158114 63223 462120872 498977056 463223297 ... |
| correct output |
|---|
| 49126485898374 2184603743669 23961846093944 2848201705457 1555275733993 ... |
| user output |
|---|
| (empty) |
Test 5
Verdict: RUNTIME ERROR
| input |
|---|
| 140966 138126 812693646 252682523 265941575 ... |
| correct output |
|---|
| 22817793228905 17812780427335 2620152643855 2866263272648 5009940526564 ... |
| user output |
|---|
| (empty) |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 70958 64685 892097055 124053711 989231834 ... |
| correct output |
|---|
| 460637799671 1475480287645 3957671266357 15189222079188 8068328407783 ... |
| user output |
|---|
| 460637799671 1475480287645 3957671266357 15189222079188 8068328407783 ... |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 97044 123753 707926206 599809760 994891636 ... |
| correct output |
|---|
| 30504891581 10585850358828 3752130598295 4274674534895 18961318419991 ... |
| user output |
|---|
| 30504891581 10585850358828 3752130598295 4274674534895 18961318419991 ... |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 25458 9623 313230374 496638350 562858459 ... |
| correct output |
|---|
| 348560018107 5323872135694 28101423541 5060603534783 8455422896644 ... |
| user output |
|---|
| 348560018107 5323872135694 28101423541 5060603534783 8455422896644 ... |
Test 9
Verdict: RUNTIME ERROR
| input |
|---|
| 161390 197159 674040671 808300128 26080705 9... |
| correct output |
|---|
| 6338494962280 9308586268339 1426570147836 619729941732 531996459059 ... |
| user output |
|---|
| (empty) |
Test 10
Verdict: RUNTIME ERROR
| input |
|---|
| 183342 96224 100979382 831921884 895353059 ... |
| correct output |
|---|
| 4146493190203 29755052359871 21010351347658 4994403502744 4874048764601 ... |
| user output |
|---|
| (empty) |
Test 11
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 163516132 88718522 960501684 3... |
| correct output |
|---|
| 8705161776177 16560680715170 4529140494185 22215511151267 307663601912 ... |
| user output |
|---|
| (empty) |
Test 12
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 661328518 295428034 543539165 ... |
| correct output |
|---|
| 44125316835086 12534063038672 13779878669135 1110457357385 53890550863397 ... |
| user output |
|---|
| (empty) |
Test 13
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 835492064 858947595 489705704 ... |
| correct output |
|---|
| 7123736494948 18343643800481 4061553943570 22394824679259 17059560008797 ... |
| user output |
|---|
| (empty) |
Test 14
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 357734101 493956933 250155363 ... |
| correct output |
|---|
| 19974989429712 60252072248233 45678027522989 9906096645143 5796576869969 ... |
| user output |
|---|
| (empty) |
Test 15
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 366056556 485208318 898983115 ... |
| correct output |
|---|
| 18324415144074 1960721236822 262868810399 418650395034 4926733633202 ... |
| user output |
|---|
| (empty) |
Test 16
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 696545081 391575800 525194671 ... |
| correct output |
|---|
| 464526195732 10421706643804 25715510077679 60768424352308 47109574794106 ... |
| user output |
|---|
| (empty) |
Test 17
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 785409780 12543965 724522794 5... |
| correct output |
|---|
| 76078073776916 12550437486909 1961851552333 3704172183345 958583269110 ... |
| user output |
|---|
| (empty) |
Test 18
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 239188181 76186945 538812873 7... |
| correct output |
|---|
| 9965856033901 22841982053808 20057247487740 22036414753777 743665836923 ... |
| user output |
|---|
| (empty) |
Test 19
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 571088696 713137765 869808231 ... |
| correct output |
|---|
| 27201871131366 1773925165749 21331314450495 44597922896 11839927329463 ... |
| user output |
|---|
| (empty) |
Test 20
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 94357126 167500952 625424533 7... |
| correct output |
|---|
| 19827596131079 1587873460955 56673140705204 1825224125411 14126369552503 ... |
| user output |
|---|
| (empty) |
Test 21
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 902289752 980717302 482700427 ... |
| correct output |
|---|
| 42722728269555 32652085471516 7532635788308 26365360928406 31706902704494 ... |
| user output |
|---|
| (empty) |
Test 22
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 234861789 896308950 585257292 ... |
| correct output |
|---|
| 23148184769579 6264813675999 47314176314048 17697735609162 2251160486380 ... |
| user output |
|---|
| (empty) |
Test 23
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 889896556 543224603 961078149 ... |
| correct output |
|---|
| 1713650642846 35249443235523 9622564970592 20993151478096 559043197323 ... |
| user output |
|---|
| (empty) |
Test 24
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 995332283 686573056 932431685 ... |
| correct output |
|---|
| 12013196028573 47655633640876 18257672284868 27625651650511 46438192959164 ... |
| user output |
|---|
| (empty) |
Test 25
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 946315600 868557890 318443283 ... |
| correct output |
|---|
| 1133762533395 57398145786924 869840469415 29146044858314 35199351262230 ... |
| user output |
|---|
| (empty) |
Test 26
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 944060128 254626749 68890590 2... |
| correct output |
|---|
| 11055994363482 2657055498612 30597070068344 7792687527844 7661261162964 ... |
| user output |
|---|
| (empty) |
Test 27
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 841299688 308557219 620166698 ... |
| correct output |
|---|
| 19393456997210 195469629029 2786427435737 1993020037538 3164725175677 ... |
| user output |
|---|
| (empty) |
Test 28
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 494252927 946174799 609845025 ... |
| correct output |
|---|
| 15907022632481 27292668068962 441027352490 40834476272262 28481559993407 ... |
| user output |
|---|
| (empty) |
Test 29
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 470856857 625269921 288612820 ... |
| correct output |
|---|
| 2046228565150 3617420568401 1053973762226 5913120807902 5419236217968 ... |
| user output |
|---|
| (empty) |
Test 30
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 200000 62623182 70087409 956344115 19... |
| correct output |
|---|
| 28081481609073 287568565804 2709243279569 5210936812890 12514447288598 ... |
| user output |
|---|
| (empty) |
