#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]);
if (n == 2)
ans = -1;
}
}
int getMinimumFuelCapacity(int i, int j) {
return star ? (mn3 == INF ? -1 : max(max(ww[i], ww[j]), mn3)) : ans;
}
# |
결과 |
실행 시간 |
메모리 |
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 |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
364 KB |
Output is correct |
2 |
Correct |
1 ms |
364 KB |
Output is correct |
3 |
Correct |
112 ms |
6028 KB |
Output is correct |
4 |
Correct |
93 ms |
5840 KB |
Output is correct |
5 |
Correct |
101 ms |
6148 KB |
Output is correct |
6 |
Correct |
92 ms |
5972 KB |
Output is correct |
7 |
Correct |
99 ms |
6124 KB |
Output is correct |
8 |
Correct |
95 ms |
6228 KB |
Output is correct |
9 |
Correct |
95 ms |
6252 KB |
Output is correct |
10 |
Correct |
97 ms |
6312 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
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 |
- |
# |
결과 |
실행 시간 |
메모리 |
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 |
- |
# |
결과 |
실행 시간 |
메모리 |
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 |
- |
# |
결과 |
실행 시간 |
메모리 |
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 |
- |