Submission #1226833

#TimeUsernameProblemLanguageResultExecution timeMemory
1226833mariaclaraOvertaking (IOI23_overtaking)C++20
39 / 100
3593 ms8264 KiB
#include "overtaking.h" #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int,int> pii; typedef vector<int> vi; typedef vector<ll> vl; #define all(x) x.begin(), x.end() #define sz(x) (int)x.size() #define mk make_pair #define pb push_back #define fr first #define sc second vector<vl> t; vi w, s; void init(int L, int N, vl T, vi W, int X, int M, vi S) { t.resize(M, vl(N+1)); w = W; w.pb(X); s = S; for(int i = 0; i < N; i++) t[0][i] = T[i]; return; } ll arrival_time(ll Y) { int m = sz(s), n = sz(w)-1; t[0][n] = Y; for(int M = 1; M < m; M++) { for(int i = 0; i <= n; i++) t[M][i] = t[M-1][i] + (ll)(s[M] - s[M-1]) * w[i]; for(int i = 0; i <= n; i++) { for(int j = 0; j <= n; j++) if(t[M-1][j] < t[M-1][i]) t[M][i] = max(t[M][i], t[M][j]); } } return t[m-1][n]; }
#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...