///~~~LOTA~~~///
#include "dungeons.h"
#include <bits/stdc++.h>
using namespace std;
#define nl '\n'
#define ff first
#define ss second
#define ll long long
#define append push_back
#define pii pair<int,int>
#define all(x) (x).begin(),(x).end()
#define N 400001
ll n;
ll l[N][26];
ll w[N][26];
ll sl[N][26];
ll sw[N][26];
ll rw[N][26];
ll rl[N][26];
void init(int m,vector<int> s,vector<int> p,vector<int> W,vector<int> L){
n=m;
w[n][0]=n;
rw[n][0]=1e18;
for(int i=0;i<n;i++){
l[i][0]=L[i];
w[i][0]=W[i];
sl[i][0]=p[i];
sw[i][0]=s[i];
rl[i][0]=s[i]+p[i];
rw[i][0]=s[i]+s[i];
}
for(int j=0;j<25;j++){
for(int i=0;i<=n;i++){
l[i][j+1]=l[l[i][j]][j];
w[i][j+1]=w[w[i][j]][j];
sl[i][j+1]=sl[i][j]+sl[l[i][j]][j];
sw[i][j+1]=sw[i][j]+sw[w[i][j]][j];
rl[i][j+1]=min(rl[l[i][j]][j],rl[i][j]+sl[l[i][j]][j]);
rw[i][j+1]=max(rw[w[i][j]][j],rw[i][j]+sw[w[i][j]][j]);
}
}
}
ll simulate(int x,int z){
int t=0;
ll p=x;
ll q=z;
while(p!=n){
if(t==1){
for(int j=25;j>=0;j--){
if(rw[p][j]<=sw[p][j]+q){
q+=sw[p][j];
p=w[p][j];
}
}
}
else{
for(int j=25;j>=0;j--){
if(rl[p][j]>sl[p][j]+q){
q+=sl[p][j];
p=l[p][j];
}
}
}
t=(t+1)%2;
}
return q;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
10588 KB |
Output is correct |
2 |
Correct |
2 ms |
10588 KB |
Output is correct |
3 |
Correct |
3 ms |
14940 KB |
Output is correct |
4 |
Correct |
67 ms |
73948 KB |
Output is correct |
5 |
Correct |
3 ms |
14940 KB |
Output is correct |
6 |
Correct |
61 ms |
73992 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
3 ms |
14940 KB |
Output is correct |
2 |
Correct |
646 ms |
502200 KB |
Output is correct |
3 |
Correct |
544 ms |
502096 KB |
Output is correct |
4 |
Correct |
548 ms |
502100 KB |
Output is correct |
5 |
Correct |
570 ms |
502192 KB |
Output is correct |
6 |
Correct |
574 ms |
502192 KB |
Output is correct |
7 |
Correct |
525 ms |
502096 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
3 ms |
14940 KB |
Output is correct |
2 |
Correct |
98 ms |
74776 KB |
Output is correct |
3 |
Correct |
107 ms |
74588 KB |
Output is correct |
4 |
Correct |
102 ms |
74800 KB |
Output is correct |
5 |
Correct |
107 ms |
74588 KB |
Output is correct |
6 |
Correct |
90 ms |
74840 KB |
Output is correct |
7 |
Correct |
89 ms |
74784 KB |
Output is correct |
8 |
Correct |
99 ms |
74576 KB |
Output is correct |
9 |
Correct |
98 ms |
74696 KB |
Output is correct |
10 |
Correct |
95 ms |
74588 KB |
Output is correct |
11 |
Correct |
104 ms |
74776 KB |
Output is correct |
12 |
Correct |
172 ms |
74580 KB |
Output is correct |
13 |
Correct |
153 ms |
74588 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
3 ms |
14940 KB |
Output is correct |
2 |
Correct |
98 ms |
74776 KB |
Output is correct |
3 |
Correct |
107 ms |
74588 KB |
Output is correct |
4 |
Correct |
102 ms |
74800 KB |
Output is correct |
5 |
Correct |
107 ms |
74588 KB |
Output is correct |
6 |
Correct |
90 ms |
74840 KB |
Output is correct |
7 |
Correct |
89 ms |
74784 KB |
Output is correct |
8 |
Correct |
99 ms |
74576 KB |
Output is correct |
9 |
Correct |
98 ms |
74696 KB |
Output is correct |
10 |
Correct |
95 ms |
74588 KB |
Output is correct |
11 |
Correct |
104 ms |
74776 KB |
Output is correct |
12 |
Correct |
172 ms |
74580 KB |
Output is correct |
13 |
Correct |
153 ms |
74588 KB |
Output is correct |
14 |
Correct |
3 ms |
14936 KB |
Output is correct |
15 |
Correct |
210 ms |
74780 KB |
Output is correct |
16 |
Correct |
103 ms |
74776 KB |
Output is correct |
17 |
Correct |
107 ms |
74776 KB |
Output is correct |
18 |
Correct |
108 ms |
74844 KB |
Output is correct |
19 |
Correct |
94 ms |
74780 KB |
Output is correct |
20 |
Correct |
118 ms |
74588 KB |
Output is correct |
21 |
Correct |
103 ms |
74764 KB |
Output is correct |
22 |
Execution timed out |
7095 ms |
74784 KB |
Time limit exceeded |
23 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
3 ms |
14940 KB |
Output is correct |
2 |
Correct |
98 ms |
74776 KB |
Output is correct |
3 |
Correct |
107 ms |
74588 KB |
Output is correct |
4 |
Correct |
102 ms |
74800 KB |
Output is correct |
5 |
Correct |
107 ms |
74588 KB |
Output is correct |
6 |
Correct |
90 ms |
74840 KB |
Output is correct |
7 |
Correct |
89 ms |
74784 KB |
Output is correct |
8 |
Correct |
99 ms |
74576 KB |
Output is correct |
9 |
Correct |
98 ms |
74696 KB |
Output is correct |
10 |
Correct |
95 ms |
74588 KB |
Output is correct |
11 |
Correct |
104 ms |
74776 KB |
Output is correct |
12 |
Correct |
172 ms |
74580 KB |
Output is correct |
13 |
Correct |
153 ms |
74588 KB |
Output is correct |
14 |
Correct |
3 ms |
14936 KB |
Output is correct |
15 |
Correct |
210 ms |
74780 KB |
Output is correct |
16 |
Correct |
103 ms |
74776 KB |
Output is correct |
17 |
Correct |
107 ms |
74776 KB |
Output is correct |
18 |
Correct |
108 ms |
74844 KB |
Output is correct |
19 |
Correct |
94 ms |
74780 KB |
Output is correct |
20 |
Correct |
118 ms |
74588 KB |
Output is correct |
21 |
Correct |
103 ms |
74764 KB |
Output is correct |
22 |
Execution timed out |
7095 ms |
74784 KB |
Time limit exceeded |
23 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
3 ms |
14940 KB |
Output is correct |
2 |
Correct |
646 ms |
502200 KB |
Output is correct |
3 |
Correct |
544 ms |
502096 KB |
Output is correct |
4 |
Correct |
548 ms |
502100 KB |
Output is correct |
5 |
Correct |
570 ms |
502192 KB |
Output is correct |
6 |
Correct |
574 ms |
502192 KB |
Output is correct |
7 |
Correct |
525 ms |
502096 KB |
Output is correct |
8 |
Correct |
3 ms |
14940 KB |
Output is correct |
9 |
Correct |
98 ms |
74776 KB |
Output is correct |
10 |
Correct |
107 ms |
74588 KB |
Output is correct |
11 |
Correct |
102 ms |
74800 KB |
Output is correct |
12 |
Correct |
107 ms |
74588 KB |
Output is correct |
13 |
Correct |
90 ms |
74840 KB |
Output is correct |
14 |
Correct |
89 ms |
74784 KB |
Output is correct |
15 |
Correct |
99 ms |
74576 KB |
Output is correct |
16 |
Correct |
98 ms |
74696 KB |
Output is correct |
17 |
Correct |
95 ms |
74588 KB |
Output is correct |
18 |
Correct |
104 ms |
74776 KB |
Output is correct |
19 |
Correct |
172 ms |
74580 KB |
Output is correct |
20 |
Correct |
153 ms |
74588 KB |
Output is correct |
21 |
Correct |
3 ms |
14936 KB |
Output is correct |
22 |
Correct |
210 ms |
74780 KB |
Output is correct |
23 |
Correct |
103 ms |
74776 KB |
Output is correct |
24 |
Correct |
107 ms |
74776 KB |
Output is correct |
25 |
Correct |
108 ms |
74844 KB |
Output is correct |
26 |
Correct |
94 ms |
74780 KB |
Output is correct |
27 |
Correct |
118 ms |
74588 KB |
Output is correct |
28 |
Correct |
103 ms |
74764 KB |
Output is correct |
29 |
Execution timed out |
7095 ms |
74784 KB |
Time limit exceeded |
30 |
Halted |
0 ms |
0 KB |
- |