Submission #386994

# Submission time Handle Problem Language Result Execution time Memory
386994 2021-04-07T19:01:11 Z rainboy Swapping Cities (APIO20_swap) C++11
7 / 100
105 ms 10240 KB
#include "swap.h"
#include <vector>

const int N = 100000, INF = 0x3f3f3f3f;

int min(int a, int b) { return a < b ? a : b; }
int max(int a, int b) { return a > b ? a : b; }

int ww[N], n, m, ans, mn1, mn2, mn3, star;

void init(int n_, int m_, std::vector<int> ii, std::vector<int> jj, std::vector<int> ww_) {
	int h, ans;

	n = n_, m = m_;
	ans = -1, star = 0;
	if (m == n - 1) {
		star = 1, ans = -1;
		for (h = 0; h < m; h++)
			if (ii[h] != 0) {
				star = 0;
				break;
			}
		mn1 = mn2 = mn3 = INF;
		for (h = 0; h < m; h++) {
			ww[jj[h]] = ww_[h];
			if (mn1 > ww_[h])
				mn3 = mn2, mn2 = mn1, mn1 = ww_[h];
			else if (mn2 > ww_[h])
				mn3 = mn2, mn2 = ww_[h];
			else if (mn3 > ww_[h])
				mn3 = ww_[h];
		}
		ans = -1;
	} else
		for (h = 0; h < m; h++)
			ans = max(ans, ww_[h]);
}

int getMinimumFuelCapacity(int i, int j) {
	return star ? (mn3 == INF ? -1 : max(max(ww[i], ww[j]), mn3)) : ans;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Incorrect 1 ms 364 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 95 ms 9740 KB Output is correct
4 Correct 96 ms 9936 KB Output is correct
5 Correct 100 ms 10240 KB Output is correct
6 Correct 99 ms 9704 KB Output is correct
7 Correct 98 ms 10092 KB Output is correct
8 Correct 96 ms 9880 KB Output is correct
9 Correct 98 ms 9832 KB Output is correct
10 Correct 105 ms 9896 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Incorrect 1 ms 364 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Incorrect 1 ms 364 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Incorrect 1 ms 364 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Incorrect 1 ms 364 KB Output isn't correct
4 Halted 0 ms 0 KB -