#include<bits/stdc++.h>
using namespace std;
#define nl '\n'
#include "swap.h"
const int N = 1e5;
vector<pair<int,int>> g[N];
int wt[N];
multiset<int> st;
void init(int n, int m, vector<int> u, vector<int> v, vector<int> w){
for(int i=0; i<m; i++){
g[u[i]].push_back({v[i], w[i]});
g[v[i]].push_back({u[i], w[i]});
wt[v[i]] = w[i];
st.insert(w[i]);
}
return;
}
int getMinimumFuelCapacity(int x, int y){
if(y == 0) swap(x, y);
if(x == 0){
if(st.size() <= 2) return -1;
st.erase(st.find(wt[y]));
int mn = max(*st.begin(), *next(st.begin()));
st.insert(wt[y]);
return max(mn, wt[y]);
}
if(st.size() == 2) return -1;
st.erase(st.find(wt[x]));
st.erase(st.find(wt[y]));
int mn = *st.begin();
st.insert(wt[x]);
st.insert(wt[y]);
return max({wt[y], wt[x], mn});
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |