# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
600384 | idiot123 | Dungeons Game (IOI21_dungeons) | C++17 | 1969 ms | 2097152 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
#include "dungeons.h"
using namespace std;
//we will use powers of 2 to decide what is the best jump
const int MAX_BIT = 25;
//jumps are base 3 to save memory
const int MAX_JUMP = 16;
const long long INF = 1e18;
vector<array<array<int, MAX_JUMP>, MAX_BIT>> jump;
vector<array<array<long long, MAX_JUMP>, MAX_BIT>> maxVal;
vector<array<array<long long, MAX_JUMP>, MAX_BIT>> sum;
int N;
void init(int n, vector<int> s, vector<int> p, vector<int> w, vector<int> l){
N = n;
vector<bool> vis(n+1, false);
jump.resize(n+1);
maxVal.resize(n+1);
sum.resize(n+1);
for(int i = 0; i < n; i++){
int xd = 1;
for(int bit = 0; bit < MAX_BIT; bit++){
if(xd >= s[i]){
jump[i][bit][0] = w[i];
maxVal[i][bit][0] = INF;
sum[i][bit][0] = s[i];
}else{
jump[i][bit][0] = l[i];
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |