Submission #293879

# Submission time Handle Problem Language Result Execution time Memory
293879 2020-09-08T13:25:20 Z crossing0ver Interval Collection (CCO20_day2problem2) C++17
25 / 25
5853 ms 510716 KB
#include<bits/stdc++.h>
#pragma GCC optimize ("O3")
#pragma GCC optimize ("unroll-loops")
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")
#define ll long long
#define vi vector<int>
#define pii pair<int,int>
#define all(x) x.begin(),x.end()
#define fi first
#define se second
#define pb push_back
using namespace std;
const int N = 1e6+6,inf = 1e8;
int F[N],ANS[N];
vector<pii> Q[N*4];
int l1,r1,QL,QR;
void qer(int v,int tl,int tr) {
    if (l1 > tr || r1 < tl) return;
    if (l1 <= tl && r1  >= tr) {
        Q[v].pb({QL,QR});
        return;
    }
    int tm = (tl + tr)/2;
    qer(v*2,tl,tm);
    qer(v*2+1,tm+1,tr);
}
int cans=INT_MAX;
int t[2][4*N],timer;
int *H[100000000];
int val[100000000];
void change(int&x,int c) {
    H[++timer] = &x;
    val[timer] = x;
    x = c;
}
void rollback() {
    (*H[timer--]) = val[timer];
}
bool type;
int VAL,pos,L,R;
int BIT[2][N];
const int REV = 1e6+1;
void add(int v=1,int tl=1,int tr=1e6) {
    if (tl == tr) {
        if (!type) {
            if (VAL < t[0][v])
            change(t[0][v],VAL);
        }
        else if  (VAL > t[1][v])
            change(t[1][v],VAL);
        return;
    }
    int tm = (tl + tr)/2;
    if (pos <= tm)
    add(v*2,tl,tm);
    else add(v*2+1,tm+1,tr);
    if (!type)
        change(t[0][v],min(t[0][v*2],t[0][v*2+1]));
    else
         change(t[1][v],max(t[1][v*2],t[1][v*2+1]));
}

void add1(int pos,int val,bool type) {
    if (type == 1)
    for (;pos <= 1e6; pos += pos&-pos)
        if (BIT[1][pos] < val)
            change(BIT[1][pos],val);
    else {
        for (;pos <= 1e6; pos += pos&-pos)
        if (BIT[0][pos] > val)
            change(BIT[0][pos],val);
    }
}
int get1(int pos,bool type) {
    if (type == 0) {
        int s = inf;
    for (;pos;pos -= pos&-pos)
        s = min(s,BIT[0][pos]);
        return s;
    }else {
            int s = -inf;
    for (;pos;pos -= pos&-pos)
        s = max(s,BIT[1][pos]);
        return s;
    }
}
int get(int v=1,int tl=1,int tr=1e6) {
    if (L> tr || R < tl) {
        if (type == 0) return inf;
        else return -inf;
    }
    if (L <= tl && R >= tr) return t[type][v];
    int tm = (tl + tr)/2;
    if (!type)
        return min(get(v*2,tl,tm),get(v*2+1,tm+1,tr));
    else return max(get(v*2,tl,tm),get(v*2+1,tm+1,tr));

}


int L1=-inf,R1=inf,AR1[N],AL1[N],HANS=inf;

void dfs(int v,int tl,int tr) {
    int in_ans = cans;
    int start_time = timer;
    for (auto& i1 : Q[v]) {
        int l = i1.fi;
        int r = i1.se;
        if (R1 > r)
            change(R1,r);
        if (L1 < l)
            change(L1,l);
        if (AR1[l] > r)
            change(AR1[l],r);
        if (AL1[r] < l)
            change(AL1[r],l);
        {
        int l2 = L1;
        int r2 = R1;
        int len = max(0,r2 - l2);
        if (len) {
        int r3 = AR1[l2];
        int l3 = AL1[r2];
        change(HANS,r3-l3);
        pos = l;
        VAL = r;
        type = 0;
        add(); // l-ze patara r-ebshi udidesi l, r-ze did l-ebshi umciresi r
       // add(REV - pos,r,0);
        pos = r;
        VAL = l;
        type = 1;
      //  add();
        add1(pos,VAL,1);
        continue;
        }
        }
        L = r;
        R = 1e6;
        type = 0;
        if (cans > r - l) {
        cans = min(cans, -l + get());
        }
        L = 1;
        R = l;type = 1;
        if (cans > r - l)
        cans = min(cans, r - get1(R,1));
        pos = l;
        VAL = r;
        type = 0;
        add(); // l-ze patara r-ebshi udidesi l, r-ze did l-ebshi umciresi r
     //   add1(REV - pos,r,0);
        pos = r;
        VAL = l;
        type = 1;
        add1(pos,VAL,1);
       // add1(pos,VAL,1);
    }
    if (tl != tr) {
        int tm = (tl + tr)/2;
        dfs(v*2,tl,tm);
        dfs(v*2+1,tm+1,tr);
    }else {
                if (cans > 1000000)
                ANS[tl] = HANS;
        else
            ANS[tl] = cans;
    }
    while(start_time != timer)
        rollback();
    cans = in_ans;
}
main() {
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int q;
    cin >> q;
    for (int i =  0; i < N; i++)
        AR1[i] = BIT[0][i] = inf,AL1[i] = BIT[1][i]=-inf;
    for (int i = 0; i < 4*N;i ++)
        t[0][i] = inf, t[1][i] = -inf;
    vector<pair<pii,char> > query(q+1);
    vector<pii> t(q);
    for (int i = 1; i <= q; i++) {
        char c;
        int l,r;
        cin >> c >> l >> r;
        query[i] = {{l,r},c};
        t[i-1] = {l,r};
    }
    sort(all(t));
    t.resize(unique(all(t)) - t.begin());
    map<pii,int> ID;
    for (int i = 0; i < t.size(); i++) {
        ID[t[i]] = i;
    }
    set<int> cnt[1000005];
    for (int i = 1; i <= q; i++) {
            char c=  query[i].se;
    int l = query[i].fi.fi;
    int r = query[i].fi.se;
    int id = ID[{l,r}];
        if (c == 'A')
                cnt[id].insert(i);
                else {
                        l1=*cnt[id].begin();
                        r1 = i-1;
                        QL= l;
                        QR = r;
            qer(1,1,q);
            cnt[id].erase(cnt[id].begin());
        }
            F[i] = 1;
        }
        for (int i= 0; i < t.size(); i++)
            for (int j : cnt[i]) {
                l1 = j;
                r1 = q;
                QL = t[i].fi;
                QR = t[i].se;
                qer(1,1,q);
            }
        dfs(1,1,q);
        for (int i = 1; i <= q; i++)
            cout << ANS[i] <<'\n';
}

Compilation message

Main.cpp: In function 'void rollback()':
Main.cpp:38:14: warning: operation on 'timer' may be undefined [-Wsequence-point]
   38 |     (*H[timer--]) = val[timer];
      |         ~~~~~^~
Main.cpp:38:14: warning: operation on 'timer' may be undefined [-Wsequence-point]
Main.cpp: In function 'void add1(int, int, bool)':
Main.cpp:65:8: warning: suggest explicit braces to avoid ambiguous 'else' [-Wdangling-else]
   65 |     if (type == 1)
      |        ^
Main.cpp: In function 'int get1(int, bool)':
Main.cpp:78:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   78 |     for (;pos;pos -= pos&-pos)
      |     ^~~
Main.cpp:80:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   80 |         return s;
      |         ^~~~~~
Main.cpp:83:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   83 |     for (;pos;pos -= pos&-pos)
      |     ^~~
Main.cpp:85:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   85 |         return s;
      |         ^~~~~~
Main.cpp: At global scope:
Main.cpp:174:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
  174 | main() {
      |      ^
Main.cpp: In function 'int main()':
Main.cpp:196:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  196 |     for (int i = 0; i < t.size(); i++) {
      |                     ~~^~~~~~~~~~
Main.cpp:217:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  217 |         for (int i= 0; i < t.size(); i++)
      |                        ~~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 121 ms 188408 KB Output is correct
2 Correct 123 ms 188284 KB Output is correct
3 Correct 120 ms 188280 KB Output is correct
4 Correct 123 ms 188372 KB Output is correct
5 Correct 128 ms 188408 KB Output is correct
6 Correct 121 ms 188280 KB Output is correct
7 Correct 118 ms 188280 KB Output is correct
8 Correct 120 ms 188280 KB Output is correct
9 Correct 119 ms 188556 KB Output is correct
10 Correct 118 ms 188536 KB Output is correct
11 Correct 124 ms 188408 KB Output is correct
12 Correct 127 ms 188596 KB Output is correct
13 Correct 123 ms 188496 KB Output is correct
14 Correct 120 ms 188536 KB Output is correct
15 Correct 118 ms 188536 KB Output is correct
16 Correct 118 ms 188540 KB Output is correct
17 Correct 116 ms 188408 KB Output is correct
18 Correct 116 ms 188280 KB Output is correct
19 Correct 115 ms 188284 KB Output is correct
20 Correct 120 ms 188280 KB Output is correct
21 Correct 119 ms 188412 KB Output is correct
22 Correct 114 ms 188280 KB Output is correct
23 Correct 116 ms 188280 KB Output is correct
24 Correct 111 ms 188280 KB Output is correct
25 Correct 115 ms 188408 KB Output is correct
26 Correct 117 ms 188408 KB Output is correct
27 Correct 112 ms 188408 KB Output is correct
28 Correct 111 ms 188408 KB Output is correct
29 Correct 111 ms 188536 KB Output is correct
30 Correct 112 ms 188536 KB Output is correct
31 Correct 119 ms 188536 KB Output is correct
32 Correct 134 ms 188512 KB Output is correct
33 Correct 127 ms 188280 KB Output is correct
34 Correct 121 ms 188280 KB Output is correct
35 Correct 119 ms 188280 KB Output is correct
36 Correct 118 ms 188280 KB Output is correct
37 Correct 119 ms 188280 KB Output is correct
38 Correct 116 ms 188284 KB Output is correct
39 Correct 118 ms 188280 KB Output is correct
40 Correct 117 ms 188280 KB Output is correct
41 Correct 116 ms 188536 KB Output is correct
42 Correct 120 ms 188280 KB Output is correct
43 Correct 123 ms 188280 KB Output is correct
44 Correct 116 ms 188280 KB Output is correct
45 Correct 118 ms 188408 KB Output is correct
46 Correct 117 ms 188256 KB Output is correct
47 Correct 119 ms 188280 KB Output is correct
48 Correct 112 ms 188280 KB Output is correct
49 Correct 113 ms 188412 KB Output is correct
50 Correct 115 ms 188408 KB Output is correct
51 Correct 115 ms 188408 KB Output is correct
52 Correct 128 ms 188408 KB Output is correct
53 Correct 125 ms 188408 KB Output is correct
54 Correct 121 ms 188408 KB Output is correct
55 Correct 120 ms 188408 KB Output is correct
56 Correct 119 ms 188408 KB Output is correct
57 Correct 117 ms 188536 KB Output is correct
58 Correct 123 ms 188408 KB Output is correct
59 Correct 116 ms 188536 KB Output is correct
60 Correct 114 ms 188536 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 121 ms 188408 KB Output is correct
2 Correct 123 ms 188284 KB Output is correct
3 Correct 120 ms 188280 KB Output is correct
4 Correct 123 ms 188372 KB Output is correct
5 Correct 128 ms 188408 KB Output is correct
6 Correct 121 ms 188280 KB Output is correct
7 Correct 118 ms 188280 KB Output is correct
8 Correct 120 ms 188280 KB Output is correct
9 Correct 119 ms 188556 KB Output is correct
10 Correct 118 ms 188536 KB Output is correct
11 Correct 124 ms 188408 KB Output is correct
12 Correct 127 ms 188596 KB Output is correct
13 Correct 123 ms 188496 KB Output is correct
14 Correct 120 ms 188536 KB Output is correct
15 Correct 118 ms 188536 KB Output is correct
16 Correct 118 ms 188540 KB Output is correct
17 Correct 116 ms 188408 KB Output is correct
18 Correct 116 ms 188280 KB Output is correct
19 Correct 115 ms 188284 KB Output is correct
20 Correct 120 ms 188280 KB Output is correct
21 Correct 119 ms 188412 KB Output is correct
22 Correct 114 ms 188280 KB Output is correct
23 Correct 116 ms 188280 KB Output is correct
24 Correct 111 ms 188280 KB Output is correct
25 Correct 115 ms 188408 KB Output is correct
26 Correct 117 ms 188408 KB Output is correct
27 Correct 112 ms 188408 KB Output is correct
28 Correct 111 ms 188408 KB Output is correct
29 Correct 111 ms 188536 KB Output is correct
30 Correct 112 ms 188536 KB Output is correct
31 Correct 119 ms 188536 KB Output is correct
32 Correct 134 ms 188512 KB Output is correct
33 Correct 127 ms 188280 KB Output is correct
34 Correct 121 ms 188280 KB Output is correct
35 Correct 119 ms 188280 KB Output is correct
36 Correct 118 ms 188280 KB Output is correct
37 Correct 119 ms 188280 KB Output is correct
38 Correct 116 ms 188284 KB Output is correct
39 Correct 118 ms 188280 KB Output is correct
40 Correct 117 ms 188280 KB Output is correct
41 Correct 116 ms 188536 KB Output is correct
42 Correct 120 ms 188280 KB Output is correct
43 Correct 123 ms 188280 KB Output is correct
44 Correct 116 ms 188280 KB Output is correct
45 Correct 118 ms 188408 KB Output is correct
46 Correct 117 ms 188256 KB Output is correct
47 Correct 119 ms 188280 KB Output is correct
48 Correct 112 ms 188280 KB Output is correct
49 Correct 113 ms 188412 KB Output is correct
50 Correct 115 ms 188408 KB Output is correct
51 Correct 115 ms 188408 KB Output is correct
52 Correct 128 ms 188408 KB Output is correct
53 Correct 125 ms 188408 KB Output is correct
54 Correct 121 ms 188408 KB Output is correct
55 Correct 120 ms 188408 KB Output is correct
56 Correct 119 ms 188408 KB Output is correct
57 Correct 117 ms 188536 KB Output is correct
58 Correct 123 ms 188408 KB Output is correct
59 Correct 116 ms 188536 KB Output is correct
60 Correct 114 ms 188536 KB Output is correct
61 Correct 111 ms 188280 KB Output is correct
62 Correct 111 ms 188280 KB Output is correct
63 Correct 117 ms 188280 KB Output is correct
64 Correct 187 ms 193068 KB Output is correct
65 Correct 182 ms 190712 KB Output is correct
66 Correct 153 ms 190072 KB Output is correct
67 Correct 131 ms 189560 KB Output is correct
68 Correct 181 ms 192888 KB Output is correct
69 Correct 167 ms 190712 KB Output is correct
70 Correct 162 ms 190192 KB Output is correct
71 Correct 157 ms 189944 KB Output is correct
72 Correct 205 ms 194552 KB Output is correct
73 Correct 200 ms 193784 KB Output is correct
74 Correct 190 ms 193528 KB Output is correct
75 Correct 186 ms 193400 KB Output is correct
76 Correct 196 ms 195576 KB Output is correct
77 Correct 191 ms 195448 KB Output is correct
78 Correct 191 ms 195452 KB Output is correct
79 Correct 195 ms 195448 KB Output is correct
80 Correct 183 ms 193016 KB Output is correct
81 Correct 171 ms 190768 KB Output is correct
82 Correct 159 ms 190072 KB Output is correct
83 Correct 138 ms 189560 KB Output is correct
84 Correct 188 ms 193016 KB Output is correct
85 Correct 170 ms 190840 KB Output is correct
86 Correct 157 ms 190072 KB Output is correct
87 Correct 150 ms 189944 KB Output is correct
88 Correct 189 ms 194552 KB Output is correct
89 Correct 192 ms 193656 KB Output is correct
90 Correct 200 ms 193400 KB Output is correct
91 Correct 209 ms 193400 KB Output is correct
92 Correct 194 ms 195448 KB Output is correct
93 Correct 196 ms 195448 KB Output is correct
94 Correct 194 ms 195448 KB Output is correct
95 Correct 194 ms 195320 KB Output is correct
96 Correct 141 ms 189560 KB Output is correct
97 Correct 139 ms 189560 KB Output is correct
98 Correct 139 ms 189560 KB Output is correct
99 Correct 143 ms 189560 KB Output is correct
100 Correct 164 ms 190076 KB Output is correct
101 Correct 155 ms 189816 KB Output is correct
102 Correct 171 ms 189944 KB Output is correct
103 Correct 143 ms 189560 KB Output is correct
104 Correct 191 ms 192888 KB Output is correct
105 Correct 172 ms 190584 KB Output is correct
106 Correct 164 ms 189924 KB Output is correct
107 Correct 149 ms 189640 KB Output is correct
108 Correct 189 ms 192248 KB Output is correct
109 Correct 173 ms 190584 KB Output is correct
110 Correct 161 ms 190112 KB Output is correct
111 Correct 141 ms 189688 KB Output is correct
112 Correct 164 ms 192640 KB Output is correct
113 Correct 171 ms 192504 KB Output is correct
114 Correct 160 ms 192632 KB Output is correct
115 Correct 166 ms 192508 KB Output is correct
116 Correct 159 ms 192760 KB Output is correct
117 Correct 178 ms 192632 KB Output is correct
118 Correct 155 ms 192632 KB Output is correct
119 Correct 166 ms 192632 KB Output is correct
120 Correct 175 ms 192652 KB Output is correct
121 Correct 174 ms 192632 KB Output is correct
122 Correct 218 ms 196088 KB Output is correct
123 Correct 178 ms 195576 KB Output is correct
124 Correct 167 ms 190712 KB Output is correct
125 Correct 164 ms 190200 KB Output is correct
126 Correct 166 ms 190072 KB Output is correct
127 Correct 172 ms 191224 KB Output is correct
128 Correct 160 ms 190072 KB Output is correct
129 Correct 163 ms 190072 KB Output is correct
130 Correct 175 ms 191352 KB Output is correct
131 Correct 168 ms 190076 KB Output is correct
132 Correct 170 ms 190072 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 121 ms 188408 KB Output is correct
2 Correct 123 ms 188284 KB Output is correct
3 Correct 120 ms 188280 KB Output is correct
4 Correct 123 ms 188372 KB Output is correct
5 Correct 128 ms 188408 KB Output is correct
6 Correct 121 ms 188280 KB Output is correct
7 Correct 118 ms 188280 KB Output is correct
8 Correct 120 ms 188280 KB Output is correct
9 Correct 119 ms 188556 KB Output is correct
10 Correct 118 ms 188536 KB Output is correct
11 Correct 124 ms 188408 KB Output is correct
12 Correct 127 ms 188596 KB Output is correct
13 Correct 123 ms 188496 KB Output is correct
14 Correct 120 ms 188536 KB Output is correct
15 Correct 118 ms 188536 KB Output is correct
16 Correct 118 ms 188540 KB Output is correct
17 Correct 116 ms 188408 KB Output is correct
18 Correct 116 ms 188280 KB Output is correct
19 Correct 115 ms 188284 KB Output is correct
20 Correct 120 ms 188280 KB Output is correct
21 Correct 119 ms 188412 KB Output is correct
22 Correct 114 ms 188280 KB Output is correct
23 Correct 116 ms 188280 KB Output is correct
24 Correct 111 ms 188280 KB Output is correct
25 Correct 115 ms 188408 KB Output is correct
26 Correct 117 ms 188408 KB Output is correct
27 Correct 112 ms 188408 KB Output is correct
28 Correct 111 ms 188408 KB Output is correct
29 Correct 111 ms 188536 KB Output is correct
30 Correct 112 ms 188536 KB Output is correct
31 Correct 119 ms 188536 KB Output is correct
32 Correct 134 ms 188512 KB Output is correct
33 Correct 127 ms 188280 KB Output is correct
34 Correct 121 ms 188280 KB Output is correct
35 Correct 119 ms 188280 KB Output is correct
36 Correct 118 ms 188280 KB Output is correct
37 Correct 119 ms 188280 KB Output is correct
38 Correct 116 ms 188284 KB Output is correct
39 Correct 118 ms 188280 KB Output is correct
40 Correct 117 ms 188280 KB Output is correct
41 Correct 116 ms 188536 KB Output is correct
42 Correct 120 ms 188280 KB Output is correct
43 Correct 123 ms 188280 KB Output is correct
44 Correct 116 ms 188280 KB Output is correct
45 Correct 118 ms 188408 KB Output is correct
46 Correct 117 ms 188256 KB Output is correct
47 Correct 119 ms 188280 KB Output is correct
48 Correct 112 ms 188280 KB Output is correct
49 Correct 113 ms 188412 KB Output is correct
50 Correct 115 ms 188408 KB Output is correct
51 Correct 115 ms 188408 KB Output is correct
52 Correct 128 ms 188408 KB Output is correct
53 Correct 125 ms 188408 KB Output is correct
54 Correct 121 ms 188408 KB Output is correct
55 Correct 120 ms 188408 KB Output is correct
56 Correct 119 ms 188408 KB Output is correct
57 Correct 117 ms 188536 KB Output is correct
58 Correct 123 ms 188408 KB Output is correct
59 Correct 116 ms 188536 KB Output is correct
60 Correct 114 ms 188536 KB Output is correct
61 Correct 111 ms 188280 KB Output is correct
62 Correct 111 ms 188280 KB Output is correct
63 Correct 117 ms 188280 KB Output is correct
64 Correct 187 ms 193068 KB Output is correct
65 Correct 182 ms 190712 KB Output is correct
66 Correct 153 ms 190072 KB Output is correct
67 Correct 131 ms 189560 KB Output is correct
68 Correct 181 ms 192888 KB Output is correct
69 Correct 167 ms 190712 KB Output is correct
70 Correct 162 ms 190192 KB Output is correct
71 Correct 157 ms 189944 KB Output is correct
72 Correct 205 ms 194552 KB Output is correct
73 Correct 200 ms 193784 KB Output is correct
74 Correct 190 ms 193528 KB Output is correct
75 Correct 186 ms 193400 KB Output is correct
76 Correct 196 ms 195576 KB Output is correct
77 Correct 191 ms 195448 KB Output is correct
78 Correct 191 ms 195452 KB Output is correct
79 Correct 195 ms 195448 KB Output is correct
80 Correct 183 ms 193016 KB Output is correct
81 Correct 171 ms 190768 KB Output is correct
82 Correct 159 ms 190072 KB Output is correct
83 Correct 138 ms 189560 KB Output is correct
84 Correct 188 ms 193016 KB Output is correct
85 Correct 170 ms 190840 KB Output is correct
86 Correct 157 ms 190072 KB Output is correct
87 Correct 150 ms 189944 KB Output is correct
88 Correct 189 ms 194552 KB Output is correct
89 Correct 192 ms 193656 KB Output is correct
90 Correct 200 ms 193400 KB Output is correct
91 Correct 209 ms 193400 KB Output is correct
92 Correct 194 ms 195448 KB Output is correct
93 Correct 196 ms 195448 KB Output is correct
94 Correct 194 ms 195448 KB Output is correct
95 Correct 194 ms 195320 KB Output is correct
96 Correct 141 ms 189560 KB Output is correct
97 Correct 139 ms 189560 KB Output is correct
98 Correct 139 ms 189560 KB Output is correct
99 Correct 143 ms 189560 KB Output is correct
100 Correct 164 ms 190076 KB Output is correct
101 Correct 155 ms 189816 KB Output is correct
102 Correct 171 ms 189944 KB Output is correct
103 Correct 143 ms 189560 KB Output is correct
104 Correct 191 ms 192888 KB Output is correct
105 Correct 172 ms 190584 KB Output is correct
106 Correct 164 ms 189924 KB Output is correct
107 Correct 149 ms 189640 KB Output is correct
108 Correct 189 ms 192248 KB Output is correct
109 Correct 173 ms 190584 KB Output is correct
110 Correct 161 ms 190112 KB Output is correct
111 Correct 141 ms 189688 KB Output is correct
112 Correct 164 ms 192640 KB Output is correct
113 Correct 171 ms 192504 KB Output is correct
114 Correct 160 ms 192632 KB Output is correct
115 Correct 166 ms 192508 KB Output is correct
116 Correct 159 ms 192760 KB Output is correct
117 Correct 178 ms 192632 KB Output is correct
118 Correct 155 ms 192632 KB Output is correct
119 Correct 166 ms 192632 KB Output is correct
120 Correct 175 ms 192652 KB Output is correct
121 Correct 174 ms 192632 KB Output is correct
122 Correct 218 ms 196088 KB Output is correct
123 Correct 178 ms 195576 KB Output is correct
124 Correct 167 ms 190712 KB Output is correct
125 Correct 164 ms 190200 KB Output is correct
126 Correct 166 ms 190072 KB Output is correct
127 Correct 172 ms 191224 KB Output is correct
128 Correct 160 ms 190072 KB Output is correct
129 Correct 163 ms 190072 KB Output is correct
130 Correct 175 ms 191352 KB Output is correct
131 Correct 168 ms 190076 KB Output is correct
132 Correct 170 ms 190072 KB Output is correct
133 Correct 513 ms 207608 KB Output is correct
134 Correct 426 ms 198648 KB Output is correct
135 Correct 338 ms 196216 KB Output is correct
136 Correct 233 ms 193912 KB Output is correct
137 Correct 500 ms 207864 KB Output is correct
138 Correct 421 ms 198648 KB Output is correct
139 Correct 363 ms 196228 KB Output is correct
140 Correct 301 ms 195192 KB Output is correct
141 Correct 508 ms 213876 KB Output is correct
142 Correct 507 ms 210652 KB Output is correct
143 Correct 486 ms 209840 KB Output is correct
144 Correct 485 ms 209656 KB Output is correct
145 Correct 503 ms 217848 KB Output is correct
146 Correct 510 ms 217716 KB Output is correct
147 Correct 503 ms 218100 KB Output is correct
148 Correct 500 ms 217844 KB Output is correct
149 Correct 490 ms 207736 KB Output is correct
150 Correct 432 ms 198500 KB Output is correct
151 Correct 355 ms 196348 KB Output is correct
152 Correct 235 ms 193912 KB Output is correct
153 Correct 487 ms 207608 KB Output is correct
154 Correct 430 ms 198648 KB Output is correct
155 Correct 350 ms 196088 KB Output is correct
156 Correct 308 ms 195192 KB Output is correct
157 Correct 512 ms 213992 KB Output is correct
158 Correct 484 ms 210552 KB Output is correct
159 Correct 494 ms 209784 KB Output is correct
160 Correct 477 ms 209656 KB Output is correct
161 Correct 522 ms 217720 KB Output is correct
162 Correct 535 ms 217460 KB Output is correct
163 Correct 506 ms 217424 KB Output is correct
164 Correct 539 ms 217332 KB Output is correct
165 Correct 203 ms 192888 KB Output is correct
166 Correct 211 ms 192892 KB Output is correct
167 Correct 219 ms 192940 KB Output is correct
168 Correct 211 ms 192888 KB Output is correct
169 Correct 303 ms 194936 KB Output is correct
170 Correct 280 ms 194424 KB Output is correct
171 Correct 270 ms 194168 KB Output is correct
172 Correct 218 ms 193144 KB Output is correct
173 Correct 460 ms 206456 KB Output is correct
174 Correct 386 ms 198008 KB Output is correct
175 Correct 323 ms 195448 KB Output is correct
176 Correct 228 ms 193272 KB Output is correct
177 Correct 472 ms 204264 KB Output is correct
178 Correct 404 ms 197496 KB Output is correct
179 Correct 328 ms 195320 KB Output is correct
180 Correct 229 ms 193272 KB Output is correct
181 Correct 305 ms 206328 KB Output is correct
182 Correct 354 ms 206200 KB Output is correct
183 Correct 307 ms 206452 KB Output is correct
184 Correct 360 ms 205860 KB Output is correct
185 Correct 308 ms 206324 KB Output is correct
186 Correct 359 ms 206196 KB Output is correct
187 Correct 311 ms 206272 KB Output is correct
188 Correct 350 ms 206324 KB Output is correct
189 Correct 314 ms 206332 KB Output is correct
190 Correct 349 ms 206200 KB Output is correct
191 Correct 445 ms 219764 KB Output is correct
192 Correct 382 ms 218484 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1574 ms 315868 KB Output is correct
2 Correct 1371 ms 310744 KB Output is correct
3 Correct 3114 ms 445440 KB Output is correct
4 Correct 3038 ms 435144 KB Output is correct
5 Correct 3864 ms 503064 KB Output is correct
6 Correct 3752 ms 491064 KB Output is correct
7 Correct 3583 ms 265004 KB Output is correct
8 Correct 2737 ms 250824 KB Output is correct
9 Correct 2602 ms 248564 KB Output is correct
10 Correct 3933 ms 272304 KB Output is correct
11 Correct 2742 ms 250616 KB Output is correct
12 Correct 2627 ms 248440 KB Output is correct
13 Correct 4178 ms 275472 KB Output is correct
14 Correct 2921 ms 250720 KB Output is correct
15 Correct 2871 ms 248476 KB Output is correct
16 Correct 1588 ms 238668 KB Output is correct
17 Correct 1565 ms 238512 KB Output is correct
18 Correct 1579 ms 238512 KB Output is correct
19 Correct 1571 ms 238928 KB Output is correct
20 Correct 1686 ms 238712 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 121 ms 188408 KB Output is correct
2 Correct 123 ms 188284 KB Output is correct
3 Correct 120 ms 188280 KB Output is correct
4 Correct 123 ms 188372 KB Output is correct
5 Correct 128 ms 188408 KB Output is correct
6 Correct 121 ms 188280 KB Output is correct
7 Correct 118 ms 188280 KB Output is correct
8 Correct 120 ms 188280 KB Output is correct
9 Correct 119 ms 188556 KB Output is correct
10 Correct 118 ms 188536 KB Output is correct
11 Correct 124 ms 188408 KB Output is correct
12 Correct 127 ms 188596 KB Output is correct
13 Correct 123 ms 188496 KB Output is correct
14 Correct 120 ms 188536 KB Output is correct
15 Correct 118 ms 188536 KB Output is correct
16 Correct 118 ms 188540 KB Output is correct
17 Correct 116 ms 188408 KB Output is correct
18 Correct 116 ms 188280 KB Output is correct
19 Correct 115 ms 188284 KB Output is correct
20 Correct 120 ms 188280 KB Output is correct
21 Correct 119 ms 188412 KB Output is correct
22 Correct 114 ms 188280 KB Output is correct
23 Correct 116 ms 188280 KB Output is correct
24 Correct 111 ms 188280 KB Output is correct
25 Correct 115 ms 188408 KB Output is correct
26 Correct 117 ms 188408 KB Output is correct
27 Correct 112 ms 188408 KB Output is correct
28 Correct 111 ms 188408 KB Output is correct
29 Correct 111 ms 188536 KB Output is correct
30 Correct 112 ms 188536 KB Output is correct
31 Correct 119 ms 188536 KB Output is correct
32 Correct 134 ms 188512 KB Output is correct
33 Correct 127 ms 188280 KB Output is correct
34 Correct 121 ms 188280 KB Output is correct
35 Correct 119 ms 188280 KB Output is correct
36 Correct 118 ms 188280 KB Output is correct
37 Correct 119 ms 188280 KB Output is correct
38 Correct 116 ms 188284 KB Output is correct
39 Correct 118 ms 188280 KB Output is correct
40 Correct 117 ms 188280 KB Output is correct
41 Correct 116 ms 188536 KB Output is correct
42 Correct 120 ms 188280 KB Output is correct
43 Correct 123 ms 188280 KB Output is correct
44 Correct 116 ms 188280 KB Output is correct
45 Correct 118 ms 188408 KB Output is correct
46 Correct 117 ms 188256 KB Output is correct
47 Correct 119 ms 188280 KB Output is correct
48 Correct 112 ms 188280 KB Output is correct
49 Correct 113 ms 188412 KB Output is correct
50 Correct 115 ms 188408 KB Output is correct
51 Correct 115 ms 188408 KB Output is correct
52 Correct 128 ms 188408 KB Output is correct
53 Correct 125 ms 188408 KB Output is correct
54 Correct 121 ms 188408 KB Output is correct
55 Correct 120 ms 188408 KB Output is correct
56 Correct 119 ms 188408 KB Output is correct
57 Correct 117 ms 188536 KB Output is correct
58 Correct 123 ms 188408 KB Output is correct
59 Correct 116 ms 188536 KB Output is correct
60 Correct 114 ms 188536 KB Output is correct
61 Correct 111 ms 188280 KB Output is correct
62 Correct 111 ms 188280 KB Output is correct
63 Correct 117 ms 188280 KB Output is correct
64 Correct 187 ms 193068 KB Output is correct
65 Correct 182 ms 190712 KB Output is correct
66 Correct 153 ms 190072 KB Output is correct
67 Correct 131 ms 189560 KB Output is correct
68 Correct 181 ms 192888 KB Output is correct
69 Correct 167 ms 190712 KB Output is correct
70 Correct 162 ms 190192 KB Output is correct
71 Correct 157 ms 189944 KB Output is correct
72 Correct 205 ms 194552 KB Output is correct
73 Correct 200 ms 193784 KB Output is correct
74 Correct 190 ms 193528 KB Output is correct
75 Correct 186 ms 193400 KB Output is correct
76 Correct 196 ms 195576 KB Output is correct
77 Correct 191 ms 195448 KB Output is correct
78 Correct 191 ms 195452 KB Output is correct
79 Correct 195 ms 195448 KB Output is correct
80 Correct 183 ms 193016 KB Output is correct
81 Correct 171 ms 190768 KB Output is correct
82 Correct 159 ms 190072 KB Output is correct
83 Correct 138 ms 189560 KB Output is correct
84 Correct 188 ms 193016 KB Output is correct
85 Correct 170 ms 190840 KB Output is correct
86 Correct 157 ms 190072 KB Output is correct
87 Correct 150 ms 189944 KB Output is correct
88 Correct 189 ms 194552 KB Output is correct
89 Correct 192 ms 193656 KB Output is correct
90 Correct 200 ms 193400 KB Output is correct
91 Correct 209 ms 193400 KB Output is correct
92 Correct 194 ms 195448 KB Output is correct
93 Correct 196 ms 195448 KB Output is correct
94 Correct 194 ms 195448 KB Output is correct
95 Correct 194 ms 195320 KB Output is correct
96 Correct 141 ms 189560 KB Output is correct
97 Correct 139 ms 189560 KB Output is correct
98 Correct 139 ms 189560 KB Output is correct
99 Correct 143 ms 189560 KB Output is correct
100 Correct 164 ms 190076 KB Output is correct
101 Correct 155 ms 189816 KB Output is correct
102 Correct 171 ms 189944 KB Output is correct
103 Correct 143 ms 189560 KB Output is correct
104 Correct 191 ms 192888 KB Output is correct
105 Correct 172 ms 190584 KB Output is correct
106 Correct 164 ms 189924 KB Output is correct
107 Correct 149 ms 189640 KB Output is correct
108 Correct 189 ms 192248 KB Output is correct
109 Correct 173 ms 190584 KB Output is correct
110 Correct 161 ms 190112 KB Output is correct
111 Correct 141 ms 189688 KB Output is correct
112 Correct 164 ms 192640 KB Output is correct
113 Correct 171 ms 192504 KB Output is correct
114 Correct 160 ms 192632 KB Output is correct
115 Correct 166 ms 192508 KB Output is correct
116 Correct 159 ms 192760 KB Output is correct
117 Correct 178 ms 192632 KB Output is correct
118 Correct 155 ms 192632 KB Output is correct
119 Correct 166 ms 192632 KB Output is correct
120 Correct 175 ms 192652 KB Output is correct
121 Correct 174 ms 192632 KB Output is correct
122 Correct 218 ms 196088 KB Output is correct
123 Correct 178 ms 195576 KB Output is correct
124 Correct 167 ms 190712 KB Output is correct
125 Correct 164 ms 190200 KB Output is correct
126 Correct 166 ms 190072 KB Output is correct
127 Correct 172 ms 191224 KB Output is correct
128 Correct 160 ms 190072 KB Output is correct
129 Correct 163 ms 190072 KB Output is correct
130 Correct 175 ms 191352 KB Output is correct
131 Correct 168 ms 190076 KB Output is correct
132 Correct 170 ms 190072 KB Output is correct
133 Correct 513 ms 207608 KB Output is correct
134 Correct 426 ms 198648 KB Output is correct
135 Correct 338 ms 196216 KB Output is correct
136 Correct 233 ms 193912 KB Output is correct
137 Correct 500 ms 207864 KB Output is correct
138 Correct 421 ms 198648 KB Output is correct
139 Correct 363 ms 196228 KB Output is correct
140 Correct 301 ms 195192 KB Output is correct
141 Correct 508 ms 213876 KB Output is correct
142 Correct 507 ms 210652 KB Output is correct
143 Correct 486 ms 209840 KB Output is correct
144 Correct 485 ms 209656 KB Output is correct
145 Correct 503 ms 217848 KB Output is correct
146 Correct 510 ms 217716 KB Output is correct
147 Correct 503 ms 218100 KB Output is correct
148 Correct 500 ms 217844 KB Output is correct
149 Correct 490 ms 207736 KB Output is correct
150 Correct 432 ms 198500 KB Output is correct
151 Correct 355 ms 196348 KB Output is correct
152 Correct 235 ms 193912 KB Output is correct
153 Correct 487 ms 207608 KB Output is correct
154 Correct 430 ms 198648 KB Output is correct
155 Correct 350 ms 196088 KB Output is correct
156 Correct 308 ms 195192 KB Output is correct
157 Correct 512 ms 213992 KB Output is correct
158 Correct 484 ms 210552 KB Output is correct
159 Correct 494 ms 209784 KB Output is correct
160 Correct 477 ms 209656 KB Output is correct
161 Correct 522 ms 217720 KB Output is correct
162 Correct 535 ms 217460 KB Output is correct
163 Correct 506 ms 217424 KB Output is correct
164 Correct 539 ms 217332 KB Output is correct
165 Correct 203 ms 192888 KB Output is correct
166 Correct 211 ms 192892 KB Output is correct
167 Correct 219 ms 192940 KB Output is correct
168 Correct 211 ms 192888 KB Output is correct
169 Correct 303 ms 194936 KB Output is correct
170 Correct 280 ms 194424 KB Output is correct
171 Correct 270 ms 194168 KB Output is correct
172 Correct 218 ms 193144 KB Output is correct
173 Correct 460 ms 206456 KB Output is correct
174 Correct 386 ms 198008 KB Output is correct
175 Correct 323 ms 195448 KB Output is correct
176 Correct 228 ms 193272 KB Output is correct
177 Correct 472 ms 204264 KB Output is correct
178 Correct 404 ms 197496 KB Output is correct
179 Correct 328 ms 195320 KB Output is correct
180 Correct 229 ms 193272 KB Output is correct
181 Correct 305 ms 206328 KB Output is correct
182 Correct 354 ms 206200 KB Output is correct
183 Correct 307 ms 206452 KB Output is correct
184 Correct 360 ms 205860 KB Output is correct
185 Correct 308 ms 206324 KB Output is correct
186 Correct 359 ms 206196 KB Output is correct
187 Correct 311 ms 206272 KB Output is correct
188 Correct 350 ms 206324 KB Output is correct
189 Correct 314 ms 206332 KB Output is correct
190 Correct 349 ms 206200 KB Output is correct
191 Correct 445 ms 219764 KB Output is correct
192 Correct 382 ms 218484 KB Output is correct
193 Correct 1574 ms 315868 KB Output is correct
194 Correct 1371 ms 310744 KB Output is correct
195 Correct 3114 ms 445440 KB Output is correct
196 Correct 3038 ms 435144 KB Output is correct
197 Correct 3864 ms 503064 KB Output is correct
198 Correct 3752 ms 491064 KB Output is correct
199 Correct 3583 ms 265004 KB Output is correct
200 Correct 2737 ms 250824 KB Output is correct
201 Correct 2602 ms 248564 KB Output is correct
202 Correct 3933 ms 272304 KB Output is correct
203 Correct 2742 ms 250616 KB Output is correct
204 Correct 2627 ms 248440 KB Output is correct
205 Correct 4178 ms 275472 KB Output is correct
206 Correct 2921 ms 250720 KB Output is correct
207 Correct 2871 ms 248476 KB Output is correct
208 Correct 1588 ms 238668 KB Output is correct
209 Correct 1565 ms 238512 KB Output is correct
210 Correct 1579 ms 238512 KB Output is correct
211 Correct 1571 ms 238928 KB Output is correct
212 Correct 1686 ms 238712 KB Output is correct
213 Correct 5189 ms 377032 KB Output is correct
214 Correct 4544 ms 295608 KB Output is correct
215 Correct 3642 ms 274400 KB Output is correct
216 Correct 2033 ms 257272 KB Output is correct
217 Correct 5213 ms 386024 KB Output is correct
218 Correct 4573 ms 297688 KB Output is correct
219 Correct 3729 ms 276076 KB Output is correct
220 Correct 2429 ms 261764 KB Output is correct
221 Correct 5289 ms 445888 KB Output is correct
222 Correct 5198 ms 412684 KB Output is correct
223 Correct 5073 ms 404424 KB Output is correct
224 Correct 5076 ms 403316 KB Output is correct
225 Correct 5322 ms 480856 KB Output is correct
226 Correct 5437 ms 479580 KB Output is correct
227 Correct 5417 ms 480900 KB Output is correct
228 Correct 5493 ms 481264 KB Output is correct
229 Correct 5097 ms 383676 KB Output is correct
230 Correct 4506 ms 294868 KB Output is correct
231 Correct 3661 ms 274020 KB Output is correct
232 Correct 2045 ms 256940 KB Output is correct
233 Correct 5312 ms 384136 KB Output is correct
234 Correct 4635 ms 297012 KB Output is correct
235 Correct 3732 ms 276052 KB Output is correct
236 Correct 2465 ms 262556 KB Output is correct
237 Correct 5523 ms 444736 KB Output is correct
238 Correct 5276 ms 410512 KB Output is correct
239 Correct 5119 ms 403452 KB Output is correct
240 Correct 5194 ms 402164 KB Output is correct
241 Correct 5426 ms 478880 KB Output is correct
242 Correct 5392 ms 479448 KB Output is correct
243 Correct 5853 ms 478584 KB Output is correct
244 Correct 5722 ms 477932 KB Output is correct
245 Correct 1423 ms 242204 KB Output is correct
246 Correct 1549 ms 242228 KB Output is correct
247 Correct 1270 ms 242216 KB Output is correct
248 Correct 1291 ms 242124 KB Output is correct
249 Correct 2732 ms 259800 KB Output is correct
250 Correct 2537 ms 261264 KB Output is correct
251 Correct 2667 ms 262128 KB Output is correct
252 Correct 1959 ms 251036 KB Output is correct
253 Correct 5761 ms 375072 KB Output is correct
254 Correct 4745 ms 294784 KB Output is correct
255 Correct 3690 ms 272808 KB Output is correct
256 Correct 2098 ms 252016 KB Output is correct
257 Correct 5432 ms 351548 KB Output is correct
258 Correct 4550 ms 287760 KB Output is correct
259 Correct 3737 ms 269332 KB Output is correct
260 Correct 2283 ms 250792 KB Output is correct
261 Correct 2609 ms 377744 KB Output is correct
262 Correct 3951 ms 376108 KB Output is correct
263 Correct 2176 ms 368936 KB Output is correct
264 Correct 3771 ms 364364 KB Output is correct
265 Correct 2493 ms 377936 KB Output is correct
266 Correct 3995 ms 376272 KB Output is correct
267 Correct 2165 ms 368904 KB Output is correct
268 Correct 3904 ms 364596 KB Output is correct
269 Correct 4078 ms 510716 KB Output is correct
270 Correct 3931 ms 498744 KB Output is correct
271 Correct 3890 ms 273544 KB Output is correct
272 Correct 2909 ms 256192 KB Output is correct
273 Correct 4517 ms 282088 KB Output is correct
274 Correct 2932 ms 256536 KB Output is correct
275 Correct 1980 ms 319860 KB Output is correct