# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1061224 | aykhn | 추월 (IOI23_overtaking) | C++17 | 3543 ms | 42068 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "overtaking.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<ll, ll> pii;
#define pb push_back
#define fi first
#define se second
#define mpr make_pair
#define mxn (ll)(1e3 + 5)
ll n, m, l, x;
vector<ll> w, t, s;
vector<pii> v[mxn];
vector<pii> ran[mxn];
vector<ll> pref[mxn];
void init(int L, int N, vector<ll> T, vector<int> W, int X, int M, vector<int> S)
{
n = N, m = M, l = L, x = X;
for (ll x : W) w.pb(x); for (ll x : T) t.pb(x); for (ll x : S) s.pb(x);
for (ll i = 0; i < n; i++) v[0].pb({t[i], w[i]});
for (ll i = 0; i + 1 < m; i++)
{
sort(v[i].begin(), v[i].end(), [&](const pii &a, const pii &b)
{
if (a.fi == b.fi) return a.se < b.se;
return a.fi < b.fi;
});
for (ll j = 0; j < v[i].size(); j++)
{
if (!j || pref[i][j - 1] <= v[i][j].fi + (s[i + 1] - s[i]) * v[i][j].se)
{
v[i + 1].pb({v[i][j].fi + (s[i + 1] - s[i]) * v[i][j].se, v[i][j].se});
ran[i].pb({v[i][j].fi, v[i][j].fi + (s[i + 1] - s[i]) * v[i][j].se});
pref[i].pb(v[i][j].fi + (s[i + 1] - s[i]) * v[i][j].se);
continue;
}
v[i + 1].pb({pref[i][j - 1], v[i][j].se});
ran[i].pb({v[i][j].fi, pref[i][j - 1]});
pref[i].pb(pref[i][j - 1]);
}
}
}
ll arrival_time(ll Y)
{
ll cur = Y;
for (ll i = 0; i + 1 < m; i++)
{
ll ind = lower_bound(ran[i].begin(), ran[i].end(), mpr(cur, -1000LL)) - ran[i].begin() - 1;
if (ind < 0 || ind >= ran[i].size() || ran[i][ind].se <= cur + (s[i + 1] - s[i]) * x)
{
cur = cur + (s[i + 1] - s[i]) * x;
continue;
}
cur = ran[i][ind].se;
}
return cur;
}
컴파일 시 표준 에러 (stderr) 메시지
# | 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... |