Submission #406002

#TimeUsernameProblemLanguageResultExecution timeMemory
406002Maqsut_03Swapping Cities (APIO20_swap)C++17
7 / 100
138 ms14976 KiB
#include "swap.h" #include<iostream> #include<vector> #include<algorithm> #include<map> #include<set> #include<queue> #include<deque> #define ll int #define pl pair<ll, ll> #define llv vector<ll> #define pb push_back #define ppb(x, y) push_back({x, y}) #define pv vector<pl> #define sz size() #define ss second #define ff first using namespace std; const int N = 2 * 1e5 + 3; bool f = 0, f1 = 1; pv v; llv w[N]; int a[N], b, k = 0; void init(int N, int M, vector<int> U, vector<int> V, vector<int> W) { if (N > 3) f = 1; for (int i=0; i<M; i++) v.ppb(W[i], V[i]); sort(v.begin(), v.end()); b = v[2].ff; for (int i=0; i<M; i++) a[V[i]] = W[i]; for (int i=0; i<M; i++) { w[V[i]].pb(U[i]); w[U[i]].pb(V[i]); k = max(k, W[i]); } for (int i=0; i<N; i++) f1 &= (w[i].sz == 2); return ; } int getMinimumFuelCapacity(int X, int Y) { if (f1) return k; if (f) return max({b, a[X], a[Y]}); 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...