| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1313172 | Dedibeat | Obstacles for a Llama (IOI25_obstacles) | C++20 | 2094 ms | 5860 KiB |
#include "obstacles.h"
#include <bits/stdc++.h>
using namespace std;
vector<int> t, h;
int n, m;
void initialize(std::vector<int> T, std::vector<int> H) {
n = T.size();
m = H.size();
t = T;
h = H;
}
pair<int, int> go(int s)
{
int l = s, r = s, j = s;
for(int i = 0; i < n; i++)
{
while(l > 0 && t[i] > h[l - 1])
{
l--;
if(h[l] < h[j] || (h[l] == h[j] && l < j)) j = l;
}
while(r < n - 1 && t[i] > h[r + 1])
{
r++;
if(h[r] < h[j] || (h[r] == h[j] && r < j)) j = r;
}
if(i == n - 1 || t[i + 1] <= h[j])
{
//cout << i << ' ' << j << endl;
return make_pair(i, j);
}
}
}
bool can_reach(int L, int R, int S, int D) {
return go(S) == go(D);
}
Compilation message (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... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
