제출 #1188356

#제출 시각아이디문제언어결과실행 시간메모리
1188356MatteoArcari추월 (IOI23_overtaking)C++20
0 / 100
0 ms328 KiB
#include "overtaking.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vi = vector<int>;

vector<ll> ex;
ll x, n, m, l;
vector<ll> w, t, s;

void init(int _l, int _n, vector<ll> _t, vi _w, int _x, int _m, vi _s) {
    n = _n; m = _m; x = _x; l = _l; t = _t;
    w = vector<ll>(_w.begin(), _w.end());
    s = vector<ll>(_s.begin(), _s.end());

    ex.resize(m);
    for (int i = 0; i < m; i++) {
        ex[i] = s[i] * w[0] + t[0];
    }
}

ll arrival_time(ll y) {
    if (x >= w[0]) return y + l * x; // più lento
    return -1;
    if (y <= t[0]) return y + l * x; // più veloce e parte prima
    if (y + l * x >= t[0] + l * w[0]) return y + l * x; // più veloce ma non supera
    for (int i = 0; i < m; i++) {
        if (ex[i] > y + s[i] * x) {
            return ex[i] + x * (l - s[i]);
        }
    }
    return -1;
}
#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...