Submission #1175739

#TimeUsernameProblemLanguageResultExecution timeMemory
1175739tkm_algorithmsSwapping Cities (APIO20_swap)C++20
0 / 100
54 ms7264 KiB
#include <bits/stdc++.h>
#include "swap.h"

using namespace std;

const int N = 1e5;

int g[N+1][2];
vector<pair<int, int>> a;

void init(int n, int m, vector<int> u, vector<int> v, vector<int> w) {
	for (int i = 0; i < m; ++i) {
		g[v[i]][0] = w[i];
		a.push_back({w[i], v[i]});
	}

	sort(a.begin(), a.end());
}

int getMinimumFuelCapacity(int x, int y) {
	int ans = -1, i = 0;
	if (x == 0 || y == 0)return -1;
	while (i < (int)a.size()) {
		if (a[i].second == x || a[i].second == y)i += 1;
		else {
			ans = a[i].first;
			break;
		}
	}

	if (ans == -1)return -1;
	assert(g[x][0] > 0 && g[y][0] > 0);
	ans = max(ans, max(g[x][0], g[y][0]));
	return ans;
}
#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...