#include <cstdio>
#include <vector>
#include <algorithm>
#include <functional>
using namespace std;
#define forn(i, n) for (int i = 0; i < (int)(n); i++)
typedef long long int64;
int64 plan_roller_coaster(vector<int> s, vector<int> t) {
int n = (int) s.size();
vector<int> data(n);
forn(i, n)
data[i] = i;
int64 res = 4e18;
auto relax = [&]() {
int64 tmp = 0;
for (int i = 1; i < n; ++i) {
tmp += max(0, t[data[i - 1]] - s[data[i]]);
}
res = min(res, tmp);
};
auto test = [&]( bool reversed, function<long double(int)> f ) {
sort(data.begin(), data.end(), [&](int i, int j){ return f(i) < f(j); });
if (reversed)
reverse(data.begin(), data.end());
relax();
};
forn(reversed, 2) {
test(reversed, [&]( int i ) { return s[i]; });
test(reversed, [&]( int i ) { return t[i]; });
test(reversed, [&]( int i ) { return s[i] + t[i]; });
test(reversed, [&]( int i ) { return s[i] - t[i]; });
test(reversed, [&]( int i ) { return (long double)s[i] * t[i]; });
test(reversed, [&]( int i ) { return (long double)s[i] / t[i]; });
test(reversed, [&]( int i ) { return (long double)s[i] * s[i] + (long double)t[i] * t[i]; });
test(reversed, [&]( int i ) { return (long double)s[i] * s[i] - (long double)t[i] * t[i]; });
}
forn(it, (int) (1e7 / n)) {
random_shuffle(data.begin(), data.end());
relax();
}
return res;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
145 ms |
260 KB |
n = 2 |
2 |
Correct |
141 ms |
264 KB |
n = 2 |
3 |
Correct |
147 ms |
260 KB |
n = 2 |
4 |
Correct |
145 ms |
268 KB |
n = 2 |
5 |
Correct |
149 ms |
260 KB |
n = 2 |
6 |
Correct |
150 ms |
260 KB |
n = 2 |
7 |
Correct |
190 ms |
272 KB |
n = 3 |
8 |
Correct |
161 ms |
264 KB |
n = 3 |
9 |
Correct |
173 ms |
264 KB |
n = 3 |
10 |
Correct |
210 ms |
212 KB |
n = 8 |
11 |
Correct |
263 ms |
264 KB |
n = 8 |
12 |
Correct |
219 ms |
212 KB |
n = 8 |
13 |
Correct |
221 ms |
268 KB |
n = 8 |
14 |
Correct |
213 ms |
268 KB |
n = 8 |
15 |
Correct |
213 ms |
268 KB |
n = 8 |
16 |
Correct |
225 ms |
268 KB |
n = 8 |
17 |
Correct |
211 ms |
272 KB |
n = 8 |
18 |
Correct |
219 ms |
264 KB |
n = 8 |
19 |
Correct |
180 ms |
272 KB |
n = 3 |
20 |
Correct |
215 ms |
268 KB |
n = 7 |
21 |
Correct |
215 ms |
272 KB |
n = 8 |
22 |
Correct |
221 ms |
272 KB |
n = 8 |
23 |
Correct |
211 ms |
212 KB |
n = 8 |
24 |
Correct |
225 ms |
264 KB |
n = 8 |
25 |
Correct |
209 ms |
268 KB |
n = 8 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
145 ms |
260 KB |
n = 2 |
2 |
Correct |
141 ms |
264 KB |
n = 2 |
3 |
Correct |
147 ms |
260 KB |
n = 2 |
4 |
Correct |
145 ms |
268 KB |
n = 2 |
5 |
Correct |
149 ms |
260 KB |
n = 2 |
6 |
Correct |
150 ms |
260 KB |
n = 2 |
7 |
Correct |
190 ms |
272 KB |
n = 3 |
8 |
Correct |
161 ms |
264 KB |
n = 3 |
9 |
Correct |
173 ms |
264 KB |
n = 3 |
10 |
Correct |
210 ms |
212 KB |
n = 8 |
11 |
Correct |
263 ms |
264 KB |
n = 8 |
12 |
Correct |
219 ms |
212 KB |
n = 8 |
13 |
Correct |
221 ms |
268 KB |
n = 8 |
14 |
Correct |
213 ms |
268 KB |
n = 8 |
15 |
Correct |
213 ms |
268 KB |
n = 8 |
16 |
Correct |
225 ms |
268 KB |
n = 8 |
17 |
Correct |
211 ms |
272 KB |
n = 8 |
18 |
Correct |
219 ms |
264 KB |
n = 8 |
19 |
Correct |
180 ms |
272 KB |
n = 3 |
20 |
Correct |
215 ms |
268 KB |
n = 7 |
21 |
Correct |
215 ms |
272 KB |
n = 8 |
22 |
Correct |
221 ms |
272 KB |
n = 8 |
23 |
Correct |
211 ms |
212 KB |
n = 8 |
24 |
Correct |
225 ms |
264 KB |
n = 8 |
25 |
Correct |
209 ms |
268 KB |
n = 8 |
26 |
Correct |
214 ms |
264 KB |
n = 8 |
27 |
Correct |
215 ms |
212 KB |
n = 8 |
28 |
Correct |
202 ms |
268 KB |
n = 8 |
29 |
Correct |
238 ms |
272 KB |
n = 16 |
30 |
Incorrect |
206 ms |
268 KB |
answer is not correct: 139846818 instead of 0 |
31 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1506 ms |
4200 KB |
n = 199999 |
2 |
Correct |
1643 ms |
4204 KB |
n = 199991 |
3 |
Correct |
1659 ms |
4204 KB |
n = 199993 |
4 |
Incorrect |
1248 ms |
3264 KB |
answer is not correct: 1 instead of 0 |
5 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
145 ms |
260 KB |
n = 2 |
2 |
Correct |
141 ms |
264 KB |
n = 2 |
3 |
Correct |
147 ms |
260 KB |
n = 2 |
4 |
Correct |
145 ms |
268 KB |
n = 2 |
5 |
Correct |
149 ms |
260 KB |
n = 2 |
6 |
Correct |
150 ms |
260 KB |
n = 2 |
7 |
Correct |
190 ms |
272 KB |
n = 3 |
8 |
Correct |
161 ms |
264 KB |
n = 3 |
9 |
Correct |
173 ms |
264 KB |
n = 3 |
10 |
Correct |
210 ms |
212 KB |
n = 8 |
11 |
Correct |
263 ms |
264 KB |
n = 8 |
12 |
Correct |
219 ms |
212 KB |
n = 8 |
13 |
Correct |
221 ms |
268 KB |
n = 8 |
14 |
Correct |
213 ms |
268 KB |
n = 8 |
15 |
Correct |
213 ms |
268 KB |
n = 8 |
16 |
Correct |
225 ms |
268 KB |
n = 8 |
17 |
Correct |
211 ms |
272 KB |
n = 8 |
18 |
Correct |
219 ms |
264 KB |
n = 8 |
19 |
Correct |
180 ms |
272 KB |
n = 3 |
20 |
Correct |
215 ms |
268 KB |
n = 7 |
21 |
Correct |
215 ms |
272 KB |
n = 8 |
22 |
Correct |
221 ms |
272 KB |
n = 8 |
23 |
Correct |
211 ms |
212 KB |
n = 8 |
24 |
Correct |
225 ms |
264 KB |
n = 8 |
25 |
Correct |
209 ms |
268 KB |
n = 8 |
26 |
Correct |
214 ms |
264 KB |
n = 8 |
27 |
Correct |
215 ms |
212 KB |
n = 8 |
28 |
Correct |
202 ms |
268 KB |
n = 8 |
29 |
Correct |
238 ms |
272 KB |
n = 16 |
30 |
Incorrect |
206 ms |
268 KB |
answer is not correct: 139846818 instead of 0 |
31 |
Halted |
0 ms |
0 KB |
- |