# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
414940 | 2021-05-31 10:50:00 | Pro_ktmr | Bodyguard (JOI21_bodyguard) | C++17 | 100 / 100 | 7975 ms | 1307600 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <bits/stdc++.h>
#include <random>
#include <unordered_map>
#include <unordered_set>
using namespace std;
#pragma GCC target("avx2")
#pragma GCC optimize("O3,unroll-loops")
using ll = long long;
using ull = unsigned long long;
#define pb push_back
#define mp make_pair
#define all(x) (x).begin(), (x).end()
#define _overload3(_1, _2, _3, name, ...) name
#define _rep(i, n) for (int(i) = 0; (i) < int(n); (i)++)
#define repi(i, a, b) for (int(i) = (a); (i) < int(b); (i)++)
#define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__)
template <class T>
bool chmax(T& a, const T& b) {
if (a < b) {
a = b;
return 1;
}
return 0;
}
template <class T>
bool chmin(T& a, const T& b) {
if (b < a) {
a = b;
return 1;
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Compilation message (stderr)
bodyguard.cpp: In function 'int main()': bodyguard.cpp:15:28: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses] 15 | #define _rep(i, n) for (int(i) = 0; (i) < int(n); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro '_rep' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:105:5: note: in expansion of macro 'rep' 105 | rep(i, N) { scanf("%d%d%d%d", T + i, A + i, B + i, C + i); } | ^~~ bodyguard.cpp:105:25: warning: format '%d' expects argument of type 'int*', but argument 2 has type 'll*' {aka 'long long int*'} [-Wformat=] 105 | rep(i, N) { scanf("%d%d%d%d", T + i, A + i, B + i, C + i); } | ~^ ~~~~~ | | | | int* ll* {aka long long int*} | %lld bodyguard.cpp:105:27: warning: format '%d' expects argument of type 'int*', but argument 3 has type 'll*' {aka 'long long int*'} [-Wformat=] 105 | rep(i, N) { scanf("%d%d%d%d", T + i, A + i, B + i, C + i); } | ~^ ~~~~~ | | | | int* ll* {aka long long int*} | %lld bodyguard.cpp:105:29: warning: format '%d' expects argument of type 'int*', but argument 4 has type 'll*' {aka 'long long int*'} [-Wformat=] 105 | rep(i, N) { scanf("%d%d%d%d", T + i, A + i, B + i, C + i); } | ~^ ~~~~~ | | | | int* ll* {aka long long int*} | %lld bodyguard.cpp:105:31: warning: format '%d' expects argument of type 'int*', but argument 5 has type 'll*' {aka 'long long int*'} [-Wformat=] 105 | rep(i, N) { scanf("%d%d%d%d", T + i, A + i, B + i, C + i); } | ~^ ~~~~~ | | | | int* ll* {aka long long int*} | %lld bodyguard.cpp:15:28: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses] 15 | #define _rep(i, n) for (int(i) = 0; (i) < int(n); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro '_rep' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:106:5: note: in expansion of macro 'rep' 106 | rep(i, Q) { scanf("%d%d", P + i, X + i); } | ^~~ bodyguard.cpp:106:25: warning: format '%d' expects argument of type 'int*', but argument 2 has type 'll*' {aka 'long long int*'} [-Wformat=] 106 | rep(i, Q) { scanf("%d%d", P + i, X + i); } | ~^ ~~~~~ | | | | int* ll* {aka long long int*} | %lld bodyguard.cpp:106:27: warning: format '%d' expects argument of type 'int*', but argument 3 has type 'll*' {aka 'long long int*'} [-Wformat=] 106 | rep(i, Q) { scanf("%d%d", P + i, X + i); } | ~^ ~~~~~ | | | | int* ll* {aka long long int*} | %lld bodyguard.cpp:15:28: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses] 15 | #define _rep(i, n) for (int(i) = 0; (i) < int(n); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro '_rep' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:108:5: note: in expansion of macro 'rep' 108 | rep(i, N) { | ^~~ bodyguard.cpp:15:28: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses] 15 | #define _rep(i, n) for (int(i) = 0; (i) < int(n); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro '_rep' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:126:5: note: in expansion of macro 'rep' 126 | rep(i, N) { | ^~~ bodyguard.cpp:16:31: warning: unnecessary parentheses in declaration of 'j' [-Wparentheses] 16 | #define repi(i, a, b) for (int(i) = (a); (i) < int(b); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro 'repi' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:131:13: note: in expansion of macro 'rep' 131 | rep(j, l, r) chmax(costX[j][y], C[i] / 2); | ^~~ bodyguard.cpp:16:31: warning: unnecessary parentheses in declaration of 'j' [-Wparentheses] 16 | #define repi(i, a, b) for (int(i) = (a); (i) < int(b); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro 'repi' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:136:13: note: in expansion of macro 'rep' 136 | rep(j, u, d) chmax(costY[x][j], C[i] / 2); | ^~~ bodyguard.cpp:141:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare] 141 | if (i != zx.size() - 1) | ~~^~~~~~~~~~~~~~~~ bodyguard.cpp:144:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare] 144 | if (j != zy.size() - 1) | ~~^~~~~~~~~~~~~~~~ bodyguard.cpp:15:28: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses] 15 | #define _rep(i, n) for (int(i) = 0; (i) < int(n); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro '_rep' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:150:5: note: in expansion of macro 'rep' 150 | rep(i, Q) { | ^~~ bodyguard.cpp:16:31: warning: unnecessary parentheses in declaration of 'x' [-Wparentheses] 16 | #define repi(i, a, b) for (int(i) = (a); (i) < int(b); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro 'repi' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:155:5: note: in expansion of macro 'rep' 155 | rep(x, 1, zx.size()) { | ^~~ bodyguard.cpp:16:31: warning: unnecessary parentheses in declaration of 'y' [-Wparentheses] 16 | #define repi(i, a, b) for (int(i) = (a); (i) < int(b); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro 'repi' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:164:5: note: in expansion of macro 'rep' 164 | rep(y, 1, zy.size()) { | ^~~ bodyguard.cpp:15:28: warning: unnecessary parentheses in declaration of 'i' [-Wparentheses] 15 | #define _rep(i, n) for (int(i) = 0; (i) < int(n); (i)++) | ^ bodyguard.cpp:14:43: note: in expansion of macro '_rep' 14 | #define _overload3(_1, _2, _3, name, ...) name | ^~~~ bodyguard.cpp:17:18: note: in expansion of macro '_overload3' 17 | #define rep(...) _overload3(__VA_ARGS__, repi, _rep)(__VA_ARGS__) | ^~~~~~~~~~ bodyguard.cpp:173:5: note: in expansion of macro 'rep' 173 | rep(i, Q) printf("%lld\n", ans[i]); | ^~~ bodyguard.cpp:104:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result] 104 | scanf("%d%d", &N, &Q); | ~~~~~^~~~~~~~~~~~~~~~ bodyguard.cpp:105:22: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result] 105 | rep(i, N) { scanf("%d%d%d%d", T + i, A + i, B + i, C + i); } | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ bodyguard.cpp:106:22: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result] 106 | rep(i, Q) { scanf("%d%d", P + i, X + i); } | ~~~~~^~~~~~~~~~~~~~~~~~~~~~
# | 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... |