Submission #1295782

#TimeUsernameProblemLanguageResultExecution timeMemory
1295782SabaKharebavaObstacles for a Llama (IOI25_obstacles)C++20
0 / 100
1144 ms2162688 KiB
#include<bits/stdc++.h>

using namespace std;

vector<vector<int>> mp;
vector<vector<int>> l;

void initialize(vector<int> t, vector<int> h) {
	mp.resize(t.size(), vector<int> (h.size(), 0));
	l.resize(t.size(), vector<int> (h.size(), -1));
	for (int i = 0; i < t.size(); i++)
		for (int j = 0; j < h.size(); j++)
			if (h[j] > t[i])
				mp[i][j] = 1;
	auto dfs = [&](auto& dfs, int i, int j, int val) -> void {
		if (mp[i][j] == 1 || i > t.size() || j > h.size() || l[i][j] != -1)
			return;
		l[i][j] = val;
		dfs(dfs, i+1, j, val);
		dfs(dfs, i, j+1, val);
	};
	for (int i = 0; i < h.size(); i++)
		dfs(dfs, 0, i, i);
}

bool can_reach(int ll, int r, int s, int d) {
	return (l[0][d] <= s);
}
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...