# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
58290 | 2018-07-17 11:07:44 | sebinkim | Wild Boar (JOI18_wild_boar) | C++14 | 100 / 100 | 11811 ms | 575008 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>
using namespace std;
typedef long long ll;
typedef pair <ll, ll> pll;
struct path{
ll s, e, v;
path() {}
path(ll _v, ll _s, ll _e) { s = _s, e = _e, v = _v; }
bool operator< (const path& p) const { return v > p.v; }
};
typedef vector <path> vp;
vp T[303030];
priority_queue <path> Q;
vp K[2020][2020];
vector <pll> V[2020];
ll chk[2020][2];
ll L[101010];
ll n, m, k;
vp add(vp &a, vp &b)
{
vp ret, ans;
ll i, j, c1, c2;
for(auto &p1: a){
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Compilation message (stderr)
wild_boar.cpp: In function 'vp add(vp&, vp&)': wild_boar.cpp:44:12: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(i=1;i<ret.size();i++){ ~^~~~~~~~~~~ wild_boar.cpp:48:8: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(i < ret.size()){ ~~^~~~~~~~~~~~ wild_boar.cpp:55:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++) if(ret[a].s != s1 && ret[a].e != e1) break; ~^~~~~~~~~~~ wild_boar.cpp:56:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()) ans.push_back(ret[a]); ~~^~~~~~~~~~~~ wild_boar.cpp:58:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++) if(ret[a].s != s2 && ret[a].e != e2) break; ~^~~~~~~~~~~ wild_boar.cpp:59:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()) ans.push_back(ret[a]); ~~^~~~~~~~~~~~ wild_boar.cpp:65:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++) if(ret[a].s != s) break; ~^~~~~~~~~~~ wild_boar.cpp:66:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()) ans.push_back(ret[a]); ~~^~~~~~~~~~~~ wild_boar.cpp:68:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++) if(ret[a].e != e) break; ~^~~~~~~~~~~ wild_boar.cpp:69:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()) ans.push_back(ret[a]); ~~^~~~~~~~~~~~ wild_boar.cpp:28:8: warning: unused variable 'j' [-Wunused-variable] ll i, j, c1, c2; ^ wild_boar.cpp:28:11: warning: unused variable 'c1' [-Wunused-variable] ll i, j, c1, c2; ^~ wild_boar.cpp:28:15: warning: unused variable 'c2' [-Wunused-variable] ll i, j, c1, c2; ^~ wild_boar.cpp: In function 'void init_seg(ll, ll, ll)': wild_boar.cpp:115:22: warning: suggest parentheses around '+' inside '>>' [-Wparentheses] init_seg(p<<1, s, (s+e>>1)); ~^~ wild_boar.cpp:116:21: warning: suggest parentheses around '+' inside '>>' [-Wparentheses] init_seg(p<<1|1, (s+e>>1)+1, e); ~^~ wild_boar.cpp: In function 'void update(ll, ll, ll, ll)': wild_boar.cpp:128:12: warning: suggest parentheses around '+' inside '>>' [-Wparentheses] if(v <= (s+e>>1)) update(p<<1, s, (s+e>>1), v); ~^~ wild_boar.cpp:128:38: warning: suggest parentheses around '+' inside '>>' [-Wparentheses] if(v <= (s+e>>1)) update(p<<1, s, (s+e>>1), v); ~^~ wild_boar.cpp:129:24: warning: suggest parentheses around '+' inside '>>' [-Wparentheses] else update(p<<1|1, (s+e>>1)+1, e, v); ~^~ wild_boar.cpp: In function 'int main()': wild_boar.cpp:161:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++){ ~^~~~~~~~~~~ wild_boar.cpp:165:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()){ ~~^~~~~~~~~~~~ wild_boar.cpp:171:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++) if(ret[a].s != s1 && ret[a].e != e1) break; ~^~~~~~~~~~~ wild_boar.cpp:172:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()) ans.push_back(ret[a]); ~~^~~~~~~~~~~~ wild_boar.cpp:174:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++) if(ret[a].s != s2 && ret[a].e != e2) break; ~^~~~~~~~~~~ wild_boar.cpp:175:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()) ans.push_back(ret[a]); ~~^~~~~~~~~~~~ wild_boar.cpp:180:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++) if(ret[a].s != s) break; ~^~~~~~~~~~~ wild_boar.cpp:181:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()) ans.push_back(ret[a]); ~~^~~~~~~~~~~~ wild_boar.cpp:183:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(a=1;a<ret.size();a++) if(ret[a].e != e) break; ~^~~~~~~~~~~ wild_boar.cpp:184:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a < ret.size()) ans.push_back(ret[a]); ~~^~~~~~~~~~~~ wild_boar.cpp:139:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%lld%lld%lld%lld", &n, &m, &q, &k); ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ wild_boar.cpp:142:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%lld%lld%lld", &a, &b, &c); ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ wild_boar.cpp:192:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%lld", L+i); ~~~~~^~~~~~~~~~~~~ wild_boar.cpp:198:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%lld%lld", &a, &b); ~~~~~^~~~~~~~~~~~~~~~~~~~
# | 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... |