답안 #896252

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
896252 2024-01-01T05:39:51 Z Sir_Ahmed_Imran 던전 (IOI21_dungeons) C++17
11 / 100
157 ms 107612 KB
                              ///~~~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][41];
ll w[N][41];
ll sl[N][41];
ll sw[N][41];
ll rw[N][41];
ll rl[N][41];
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<40;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=40;j>=0;j--){
                if(rw[p][j]<=sw[p][j]+q){
                    q+=sw[p][j];
                    p=w[p][j];
                }
            }
        }
        else{
            for(int j=40;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 1 ms 10588 KB Output is correct
2 Correct 1 ms 10588 KB Output is correct
3 Correct 3 ms 14940 KB Output is correct
4 Correct 87 ms 106840 KB Output is correct
5 Correct 3 ms 14936 KB Output is correct
6 Correct 88 ms 106844 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 12888 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 12968 KB Output is correct
2 Correct 157 ms 107612 KB Output is correct
3 Incorrect 141 ms 107612 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 12968 KB Output is correct
2 Correct 157 ms 107612 KB Output is correct
3 Incorrect 141 ms 107612 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 12968 KB Output is correct
2 Correct 157 ms 107612 KB Output is correct
3 Incorrect 141 ms 107612 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 12888 KB Output isn't correct
2 Halted 0 ms 0 KB -