Submission #1062598

#TimeUsernameProblemLanguageResultExecution timeMemory
1062598j_vdd16Fountain Parks (IOI21_parks)C++17
5 / 100
67 ms8616 KiB
#include "parks.h" #include <algorithm> #include <bitset> #include <cstdint> #include <cstring> #include <iostream> #include <limits.h> #include <math.h> #include <map> #include <numeric> #include <queue> #include <set> #include <stack> #include <string> #include <vector> //#define int long long #define loop(X, N) for(int X = 0; X < (N); X++) #define all(V) V.begin(), V.end() #define rall(V) V.rbegin(), V.rend() using namespace std; typedef vector<int> vi; typedef vector<vi> vvi; typedef pair<int, int> ii; typedef vector<ii> vii; typedef vector<vector<ii>> vvii; typedef vector<bool> vb; typedef vector<vector<bool>> vvb; int construct_roads(std::vector<int> x, std::vector<int> y) { int n = x.size(); vector<pair<ii, int>> benches(n); loop(i, n) { benches[i].first.first = y[i]; benches[i].first.second = x[i]; benches[i].second = i; } sort(all(benches)); int diff = benches.back().first.first - benches[0].first.first; if (diff / 2 + 1 != n) return 0; int m = n - 1; vi u(m), v(m), a(m), b(m); loop(i, n - 1) { u[i] = benches[i].second; v[i] = benches[i + 1].second; a[i] = 3; b[i] = benches[i].first.first + 1; } build(u, v, a, b); return 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...