Submission #1216159

#TimeUsernameProblemLanguageResultExecution timeMemory
1216159thelegendary08Dungeons Game (IOI21_dungeons)C++17
11 / 100
7094 ms19784 KiB
#include "dungeons.h"
#include<bits/stdc++.h>
#define pb push_back
#define mp make_pair
#define vi vector<int>
#define f0r(i,n) for(int i = 0; i<n; i++)
#define FOR(i, k, n) for(int i = k; i<n; i++)
#define pii pair<int,int>
#define vvi vector<vector<int>>
#define vb vector<bool>
#define vpii vector<pair<int,int>>
#define vout(v) for(auto u : v)cout<<u<<' '; cout<<endl;
#define dout(x) cout<<x<<' '<<#x<<endl;
#define dout2(x,y) cout<<x<<' '<<#x<<' '<<y<<' '<<#y<<endl;
using namespace std;

vi s,p,w,l; int n;
void init(signed n, std::vector<signed> s, std::vector<signed> p, std::vector<signed> w, std::vector<signed> l) {
	::s=s; ::p=p; ::w=w; ::l=l; ::n=n;
	return;
}

long long simulate(signed x, signed z) {
	int cur = x;
	int a = z;
	
	while(cur != n){
		if(a >= s[cur]){
			a += s[cur];
			cur = w[cur];
		}
		else{
			a += p[cur]; 
			cur = l[cur];
		}
		
	}
	return a;
}

#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...
#Verdict Execution timeMemoryGrader output
Fetching results...