Submission #445398

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
4453982021-07-17 21:25:59apostoldaniel854Fountain Parks (IOI21_parks)C++17
100 / 100
686 ms56712 KiB
#include "parks.h"
#include <map>
#include <algorithm>
#include <iostream>
const int MAX_N = 2e5;
int dx[] = {0, 0, -1, 1};
int dy[] = {-1, 1, 0, 0};
int dxb[] = {-1, -1, 1, 1};
int dyb[] = {-1, 1, -1, 1};
bool used[1 + MAX_N];
std::map <std::pair <int, int>, int> fountains;
int nr;
void dfs (int node, std::vector <int> &x, std::vector <int> &y) {
used[node] = true;
++nr;
for (int dir = 0; dir < 4; dir++) {
int nx = x[node] + 2 * dx[dir];
int ny = y[node] + 2 * dy[dir];
if (fountains.count ({nx, ny})) {
int vec = fountains[{nx, ny}];
if (not used[vec])
dfs (vec, x, y);
}
}
}
int construct_roads(std::vector<int> x, std::vector<int> y) {
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#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...