# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1166880 | andrei_n | Exam (eJOI20_exam) | C++20 | 433 ms | 99876 KiB |
#include <bits/stdc++.h>
using namespace std;
int a[100005],b[100005];
int dp[5005][5005];
int rmq[14][5005];
int e[5005];
inline int query(const int &a, const int &b)
{
return max(rmq[e[b-a+1]][a], rmq[e[b-a+1]][b + 1 - (1<<e[b-a+1])]);
}
signed main()
{
ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
int n; cin>>n;
for(int i=1; i<=n; ++i)
{
cin>>a[i];
rmq[0][i] = a[i];
}
for(int i=1; i<=n; ++i) cin>>b[i];
for(int i=1; i<14; ++i)
for(int j=1; j+(1<<i)-1 <= n; ++j)
rmq[i][j] = max(rmq[i-1][j], rmq[i-1][j+(1<<i-1)]);
for(int i=2; i<=n; ++i)
e[i] = e[i-1] + ((i & (i-1)) == 0);
for(int i=1; i<=n; ++i)
# | 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... |