Submission #1047159

#TimeUsernameProblemLanguageResultExecution timeMemory
1047159AbitoOvertaking (IOI23_overtaking)C++17
39 / 100
3536 ms16164 KiB
#include "overtaking.h" #include <bits/stdc++.h> #define int long long using namespace std; const int N=1005; int a[N],b[N],c[N],n,m,t[N][N],e[N][N]; void init(int32_t L, int32_t N, vector<long long> T, vector<int32_t> W, int32_t X, int32_t M, vector<int32_t> S) { n=N,m=M; for (int i=0;i<n;i++) a[i]=T[i],b[i]=W[i]; for (int i=0;i<m;i++) c[i]=S[i]; b[n]=X; return; } long long arrival_time(long long Y) { a[n]=Y; for (int i=0;i<=n;i++) t[i][0]=a[i]; for (int j=1;j<m;j++){ for (int i=0;i<=n;i++){ t[i][j]=e[i][j]=t[i][j-1]+b[i]*(c[j]-c[j-1]); } for (int i=0;i<=n;i++){ for (int k=0;k<=n;k++){ if (t[k][j-1]<t[i][j-1]) t[i][j]=max(t[i][j],e[k][j]); } } } return t[n][m-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...