Submission #1032359

#TimeUsernameProblemLanguageResultExecution timeMemory
1032359slivajanSwapping Cities (APIO20_swap)C++17
0 / 100
1 ms600 KiB
#include "swap.h" #include <bits/stdc++.h> using namespace std; typedef long long un; typedef vector<un> vuc; typedef vector<bool> vol; #define vec vector #define REP(i, a, b) for (un i = (un)a; i < (un)b; i++) #define FEAC(i, a) for (auto&& i : a) constexpr un INF = 1e9 + 1; vuc delky; un nej; un nej2; un nej3; void init(int N, int M, std::vector<int> U, std::vector<int> V, std::vector<int> W) { delky = vuc(N); REP(i, 0, M){ delky[V[i]] = W[i]; } vec<pair<un, un>> toSort; REP(i, 1, N){ toSort.push_back({delky[i], i}); } sort(toSort.begin(), toSort.end()); nej = toSort[0].second; nej2 = toSort[1].second; nej3 = toSort[2].second; } int getMinimumFuelCapacity(int X, int Y) { if (X > Y) swap(X, Y); if (X == 0) return getMinimumFuelCapacity(nej, Y); if (((X == nej) and (Y == nej2)) or ((Y == nej) and (X == nej2))){ return max({delky[X], delky[Y], delky[nej3]}); } if ((X == nej) or (Y == nej)) return max({delky[X], delky[Y], delky[nej2]}); return max({delky[X], delky[Y], delky[nej]}); }
#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...