Submission #162179

# Submission time Handle Problem Language Result Execution time Memory
162179 2019-11-06T20:34:16 Z popovicirobert Paint By Numbers (IOI16_paint) C++14
100 / 100
805 ms 43492 KB
#include "paint.h"
#include <bits/stdc++.h>

using namespace std;

const int MAXN = (int) 2e5 + 5;
const int MAXK = 100;

static bool dpl[MAXN + 1][MAXK + 1], dpr[MAXN + 1][MAXK + 1];
int toL[MAXN + 1];

inline void solve(string &str, vector <int> &c, int n, int k, bool dp[MAXN + 1][MAXK + 1]) {
    int i, j;
    for(i = 1; i <= n; i++) {
        toL[i] = i;
        if(str[i] != 'X') {
            toL[i] = toL[i - 1];
        }
    }

    vector <int> W(n + 1), sp(n + 1);

    dp[0][0] = 1;
    for(i = 1; i <= n; i++) {
        dp[i][0] = (dp[i - 1][0] && str[i] != 'X');
        W[i] = W[i - 1] + (str[i] == '_');
    }

    for(j = 1; j <= k; j++) {
        sp[0] = 0;
        for(i = 1; i <= n; i++) {
            if(i >= c[j] && str[i - c[j]] != 'X' && W[i] - W[i - c[j]] == 0) {
                if(j == 1) {
                    if(toL[i - c[j]] == 0)
                        dp[i][j] = 1;
                }
                else if(i > c[j]) {
                    dp[i][j] = (sp[i - c[j] - 1] - sp[max(0, toL[i - c[j]] - 1)] > 0);
                }
            }
            sp[i] = sp[i - 1] + dp[i][j - 1];
        }
    }
}

string solve_puzzle(string s, vector<int> c) {
    int n = s.size(), k = c.size();
    int i, j;

    string str = " " + s;
    c.resize(k + 1), str.resize(n + 2);
    for(i = k; i >= 1; i--) {
        c[i] = c[i - 1];
    }

    solve(str, c, n, k, dpl);
    for(i = 1; i < n - i + 1; i++) {
        swap(str[i], str[n - i + 1]);
    }
    for(i = 1; i < k - i + 1; i++) {
        swap(c[i], c[k - i + 1]);
    }

    solve(str, c, n, k, dpr);
    for(i = 1; i < n - i + 1; i++) {
        swap(str[i], str[n - i + 1]);
        for(j = 0; j <= k; j++) {
            swap(dpr[i][j], dpr[n - i + 1][j]);
        }
    }
    for(i = 1; i < k - i + 1; i++) {
        swap(c[i], c[k - i + 1]);
    }

    vector <int> B(n + 2), W(n + 2);

    for(j = 1; j <= k; j++) {
        int mx = n + 1, last = n + 1;
        for(i = n; i >= 1; i--) {
            /*if(i == 78 && j == 5) {
                cerr << mx << "\n";
            }*/
            if(dpl[i][j] && str[i + 1] != 'X' && ((j == k && last == n + 1) || (j < k && mx > i + 1 && mx != n + 1 && mx <= last))) {
                B[i - c[j] + 1]++;
                B[i + 1]--;

                W[i + 1]++;
                W[mx]--;
            }

            if(str[i] == 'X') last = i;

            if(dpr[i][k - j] && (mx > last || mx == n + 1) && j != k) {
                mx = i;
            }
        }
    }

    for(i = 1; i <= n; i++) {
        if(dpr[i][k]) {
            W[1]++, W[i]--;
        }
        if(str[i] == 'X') break;
    }

    string ans; ans.resize(n);
    for(i = 1; i <= n; i++) {
        B[i] += B[i - 1], W[i] += W[i - 1];
        if(B[i] && W[i]) {
            ans[i - 1] = '?';
        }
        else if(B[i]) {
            ans[i - 1] = 'X';
        }
        else if(W[i]) {
            ans[i - 1] = '_';
        }
        else {
            assert(0);
        }
    }

    return ans;
}
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB n = 13, m = 1
2 Correct 2 ms 248 KB n = 18, m = 1
3 Correct 2 ms 376 KB n = 17, m = 1
4 Correct 2 ms 376 KB n = 1, m = 1
5 Correct 14 ms 376 KB n = 20, m = 1
6 Correct 2 ms 376 KB n = 20, m = 1
7 Correct 2 ms 376 KB n = 20, m = 1
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB n = 13, m = 1
2 Correct 2 ms 248 KB n = 18, m = 1
3 Correct 2 ms 376 KB n = 17, m = 1
4 Correct 2 ms 376 KB n = 1, m = 1
5 Correct 14 ms 376 KB n = 20, m = 1
6 Correct 2 ms 376 KB n = 20, m = 1
7 Correct 2 ms 376 KB n = 20, m = 1
8 Correct 2 ms 380 KB n = 20, m = 5
9 Correct 2 ms 376 KB n = 18, m = 3
10 Correct 2 ms 376 KB n = 17, m = 2
11 Correct 0 ms 376 KB n = 20, m = 2
12 Correct 2 ms 376 KB n = 17, m = 4
13 Correct 2 ms 376 KB n = 17, m = 6
14 Correct 2 ms 376 KB n = 17, m = 1
15 Correct 2 ms 376 KB n = 17, m = 4
16 Correct 2 ms 376 KB n = 13, m = 3
17 Correct 2 ms 376 KB n = 18, m = 4
18 Correct 2 ms 376 KB n = 20, m = 10
19 Correct 2 ms 376 KB n = 19, m = 10
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB n = 13, m = 1
2 Correct 2 ms 248 KB n = 18, m = 1
3 Correct 2 ms 376 KB n = 17, m = 1
4 Correct 2 ms 376 KB n = 1, m = 1
5 Correct 14 ms 376 KB n = 20, m = 1
6 Correct 2 ms 376 KB n = 20, m = 1
7 Correct 2 ms 376 KB n = 20, m = 1
8 Correct 2 ms 380 KB n = 20, m = 5
9 Correct 2 ms 376 KB n = 18, m = 3
10 Correct 2 ms 376 KB n = 17, m = 2
11 Correct 0 ms 376 KB n = 20, m = 2
12 Correct 2 ms 376 KB n = 17, m = 4
13 Correct 2 ms 376 KB n = 17, m = 6
14 Correct 2 ms 376 KB n = 17, m = 1
15 Correct 2 ms 376 KB n = 17, m = 4
16 Correct 2 ms 376 KB n = 13, m = 3
17 Correct 2 ms 376 KB n = 18, m = 4
18 Correct 2 ms 376 KB n = 20, m = 10
19 Correct 2 ms 376 KB n = 19, m = 10
20 Correct 2 ms 376 KB n = 100, m = 5
21 Correct 2 ms 372 KB n = 90, m = 3
22 Correct 2 ms 376 KB n = 86, m = 2
23 Correct 2 ms 376 KB n = 81, m = 4
24 Correct 2 ms 376 KB n = 89, m = 10
25 Correct 2 ms 376 KB n = 81, m = 23
26 Correct 2 ms 376 KB n = 86, m = 8
27 Correct 2 ms 380 KB n = 53, m = 22
28 Correct 2 ms 376 KB n = 89, m = 35
29 Correct 10 ms 376 KB n = 63, m = 25
30 Correct 2 ms 376 KB n = 100, m = 50
31 Correct 2 ms 376 KB n = 99, m = 50
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB n = 13, m = 1
2 Correct 2 ms 248 KB n = 18, m = 1
3 Correct 2 ms 376 KB n = 17, m = 1
4 Correct 2 ms 376 KB n = 1, m = 1
5 Correct 14 ms 376 KB n = 20, m = 1
6 Correct 2 ms 376 KB n = 20, m = 1
7 Correct 2 ms 376 KB n = 20, m = 1
8 Correct 2 ms 380 KB n = 20, m = 5
9 Correct 2 ms 376 KB n = 18, m = 3
10 Correct 2 ms 376 KB n = 17, m = 2
11 Correct 0 ms 376 KB n = 20, m = 2
12 Correct 2 ms 376 KB n = 17, m = 4
13 Correct 2 ms 376 KB n = 17, m = 6
14 Correct 2 ms 376 KB n = 17, m = 1
15 Correct 2 ms 376 KB n = 17, m = 4
16 Correct 2 ms 376 KB n = 13, m = 3
17 Correct 2 ms 376 KB n = 18, m = 4
18 Correct 2 ms 376 KB n = 20, m = 10
19 Correct 2 ms 376 KB n = 19, m = 10
20 Correct 2 ms 376 KB n = 100, m = 5
21 Correct 2 ms 372 KB n = 90, m = 3
22 Correct 2 ms 376 KB n = 86, m = 2
23 Correct 2 ms 376 KB n = 81, m = 4
24 Correct 2 ms 376 KB n = 89, m = 10
25 Correct 2 ms 376 KB n = 81, m = 23
26 Correct 2 ms 376 KB n = 86, m = 8
27 Correct 2 ms 380 KB n = 53, m = 22
28 Correct 2 ms 376 KB n = 89, m = 35
29 Correct 10 ms 376 KB n = 63, m = 25
30 Correct 2 ms 376 KB n = 100, m = 50
31 Correct 2 ms 376 KB n = 99, m = 50
32 Correct 2 ms 376 KB n = 13, m = 4
33 Correct 2 ms 376 KB n = 86, m = 2
34 Correct 2 ms 376 KB n = 88, m = 2
35 Correct 2 ms 376 KB n = 86, m = 2
36 Correct 2 ms 376 KB n = 81, m = 6
37 Correct 2 ms 376 KB n = 98, m = 7
38 Correct 2 ms 376 KB n = 92, m = 7
39 Correct 2 ms 376 KB n = 88, m = 21
40 Correct 2 ms 376 KB n = 90, m = 21
41 Correct 2 ms 376 KB n = 98, m = 22
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB n = 13, m = 1
2 Correct 2 ms 248 KB n = 18, m = 1
3 Correct 2 ms 376 KB n = 17, m = 1
4 Correct 2 ms 376 KB n = 1, m = 1
5 Correct 14 ms 376 KB n = 20, m = 1
6 Correct 2 ms 376 KB n = 20, m = 1
7 Correct 2 ms 376 KB n = 20, m = 1
8 Correct 2 ms 380 KB n = 20, m = 5
9 Correct 2 ms 376 KB n = 18, m = 3
10 Correct 2 ms 376 KB n = 17, m = 2
11 Correct 0 ms 376 KB n = 20, m = 2
12 Correct 2 ms 376 KB n = 17, m = 4
13 Correct 2 ms 376 KB n = 17, m = 6
14 Correct 2 ms 376 KB n = 17, m = 1
15 Correct 2 ms 376 KB n = 17, m = 4
16 Correct 2 ms 376 KB n = 13, m = 3
17 Correct 2 ms 376 KB n = 18, m = 4
18 Correct 2 ms 376 KB n = 20, m = 10
19 Correct 2 ms 376 KB n = 19, m = 10
20 Correct 2 ms 376 KB n = 100, m = 5
21 Correct 2 ms 372 KB n = 90, m = 3
22 Correct 2 ms 376 KB n = 86, m = 2
23 Correct 2 ms 376 KB n = 81, m = 4
24 Correct 2 ms 376 KB n = 89, m = 10
25 Correct 2 ms 376 KB n = 81, m = 23
26 Correct 2 ms 376 KB n = 86, m = 8
27 Correct 2 ms 380 KB n = 53, m = 22
28 Correct 2 ms 376 KB n = 89, m = 35
29 Correct 10 ms 376 KB n = 63, m = 25
30 Correct 2 ms 376 KB n = 100, m = 50
31 Correct 2 ms 376 KB n = 99, m = 50
32 Correct 2 ms 376 KB n = 13, m = 4
33 Correct 2 ms 376 KB n = 86, m = 2
34 Correct 2 ms 376 KB n = 88, m = 2
35 Correct 2 ms 376 KB n = 86, m = 2
36 Correct 2 ms 376 KB n = 81, m = 6
37 Correct 2 ms 376 KB n = 98, m = 7
38 Correct 2 ms 376 KB n = 92, m = 7
39 Correct 2 ms 376 KB n = 88, m = 21
40 Correct 2 ms 376 KB n = 90, m = 21
41 Correct 2 ms 376 KB n = 98, m = 22
42 Correct 2 ms 376 KB n = 11, m = 2
43 Correct 2 ms 376 KB n = 11, m = 2
44 Correct 2 ms 376 KB n = 13, m = 3
45 Correct 2 ms 376 KB n = 86, m = 2
46 Correct 2 ms 376 KB n = 81, m = 2
47 Correct 2 ms 376 KB n = 93, m = 2
48 Correct 2 ms 376 KB n = 81, m = 2
49 Correct 2 ms 376 KB n = 86, m = 2
50 Correct 2 ms 376 KB n = 90, m = 2
51 Correct 2 ms 376 KB n = 87, m = 2
52 Correct 2 ms 376 KB n = 97, m = 2
53 Correct 2 ms 376 KB n = 85, m = 2
54 Correct 2 ms 376 KB n = 88, m = 7
55 Correct 2 ms 376 KB n = 96, m = 7
56 Correct 2 ms 376 KB n = 85, m = 7
57 Correct 3 ms 380 KB n = 92, m = 7
58 Correct 2 ms 376 KB n = 92, m = 7
59 Correct 2 ms 364 KB n = 86, m = 7
60 Correct 2 ms 376 KB n = 87, m = 7
61 Correct 2 ms 376 KB n = 100, m = 7
62 Correct 2 ms 376 KB n = 100, m = 7
63 Correct 2 ms 296 KB n = 92, m = 21
64 Correct 2 ms 376 KB n = 93, m = 22
65 Correct 2 ms 372 KB n = 95, m = 22
66 Correct 2 ms 376 KB n = 98, m = 22
67 Correct 2 ms 376 KB n = 94, m = 22
68 Correct 2 ms 376 KB n = 93, m = 22
69 Correct 2 ms 376 KB n = 88, m = 21
70 Correct 2 ms 376 KB n = 83, m = 20
71 Correct 2 ms 380 KB n = 99, m = 23
72 Correct 2 ms 372 KB n = 96, m = 19
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB n = 13, m = 1
2 Correct 2 ms 248 KB n = 18, m = 1
3 Correct 2 ms 376 KB n = 17, m = 1
4 Correct 2 ms 376 KB n = 1, m = 1
5 Correct 14 ms 376 KB n = 20, m = 1
6 Correct 2 ms 376 KB n = 20, m = 1
7 Correct 2 ms 376 KB n = 20, m = 1
8 Correct 2 ms 380 KB n = 20, m = 5
9 Correct 2 ms 376 KB n = 18, m = 3
10 Correct 2 ms 376 KB n = 17, m = 2
11 Correct 0 ms 376 KB n = 20, m = 2
12 Correct 2 ms 376 KB n = 17, m = 4
13 Correct 2 ms 376 KB n = 17, m = 6
14 Correct 2 ms 376 KB n = 17, m = 1
15 Correct 2 ms 376 KB n = 17, m = 4
16 Correct 2 ms 376 KB n = 13, m = 3
17 Correct 2 ms 376 KB n = 18, m = 4
18 Correct 2 ms 376 KB n = 20, m = 10
19 Correct 2 ms 376 KB n = 19, m = 10
20 Correct 2 ms 376 KB n = 100, m = 5
21 Correct 2 ms 372 KB n = 90, m = 3
22 Correct 2 ms 376 KB n = 86, m = 2
23 Correct 2 ms 376 KB n = 81, m = 4
24 Correct 2 ms 376 KB n = 89, m = 10
25 Correct 2 ms 376 KB n = 81, m = 23
26 Correct 2 ms 376 KB n = 86, m = 8
27 Correct 2 ms 380 KB n = 53, m = 22
28 Correct 2 ms 376 KB n = 89, m = 35
29 Correct 10 ms 376 KB n = 63, m = 25
30 Correct 2 ms 376 KB n = 100, m = 50
31 Correct 2 ms 376 KB n = 99, m = 50
32 Correct 2 ms 376 KB n = 13, m = 4
33 Correct 2 ms 376 KB n = 86, m = 2
34 Correct 2 ms 376 KB n = 88, m = 2
35 Correct 2 ms 376 KB n = 86, m = 2
36 Correct 2 ms 376 KB n = 81, m = 6
37 Correct 2 ms 376 KB n = 98, m = 7
38 Correct 2 ms 376 KB n = 92, m = 7
39 Correct 2 ms 376 KB n = 88, m = 21
40 Correct 2 ms 376 KB n = 90, m = 21
41 Correct 2 ms 376 KB n = 98, m = 22
42 Correct 2 ms 376 KB n = 11, m = 2
43 Correct 2 ms 376 KB n = 11, m = 2
44 Correct 2 ms 376 KB n = 13, m = 3
45 Correct 2 ms 376 KB n = 86, m = 2
46 Correct 2 ms 376 KB n = 81, m = 2
47 Correct 2 ms 376 KB n = 93, m = 2
48 Correct 2 ms 376 KB n = 81, m = 2
49 Correct 2 ms 376 KB n = 86, m = 2
50 Correct 2 ms 376 KB n = 90, m = 2
51 Correct 2 ms 376 KB n = 87, m = 2
52 Correct 2 ms 376 KB n = 97, m = 2
53 Correct 2 ms 376 KB n = 85, m = 2
54 Correct 2 ms 376 KB n = 88, m = 7
55 Correct 2 ms 376 KB n = 96, m = 7
56 Correct 2 ms 376 KB n = 85, m = 7
57 Correct 3 ms 380 KB n = 92, m = 7
58 Correct 2 ms 376 KB n = 92, m = 7
59 Correct 2 ms 364 KB n = 86, m = 7
60 Correct 2 ms 376 KB n = 87, m = 7
61 Correct 2 ms 376 KB n = 100, m = 7
62 Correct 2 ms 376 KB n = 100, m = 7
63 Correct 2 ms 296 KB n = 92, m = 21
64 Correct 2 ms 376 KB n = 93, m = 22
65 Correct 2 ms 372 KB n = 95, m = 22
66 Correct 2 ms 376 KB n = 98, m = 22
67 Correct 2 ms 376 KB n = 94, m = 22
68 Correct 2 ms 376 KB n = 93, m = 22
69 Correct 2 ms 376 KB n = 88, m = 21
70 Correct 2 ms 376 KB n = 83, m = 20
71 Correct 2 ms 380 KB n = 99, m = 23
72 Correct 2 ms 372 KB n = 96, m = 19
73 Correct 3 ms 1400 KB n = 4825, m = 5
74 Correct 3 ms 1272 KB n = 4384, m = 5
75 Correct 3 ms 1400 KB n = 4528, m = 5
76 Correct 3 ms 1400 KB n = 4980, m = 5
77 Correct 3 ms 1400 KB n = 4730, m = 5
78 Correct 3 ms 1400 KB n = 4784, m = 5
79 Correct 3 ms 1400 KB n = 4875, m = 5
80 Correct 3 ms 1400 KB n = 4576, m = 5
81 Correct 3 ms 1272 KB n = 4297, m = 5
82 Correct 7 ms 1400 KB n = 4662, m = 48
83 Correct 7 ms 1400 KB n = 4753, m = 49
84 Correct 6 ms 1272 KB n = 4148, m = 46
85 Correct 6 ms 1400 KB n = 4906, m = 50
86 Correct 7 ms 1404 KB n = 4967, m = 50
87 Correct 7 ms 1400 KB n = 4828, m = 49
88 Correct 6 ms 1272 KB n = 4105, m = 45
89 Correct 7 ms 1400 KB n = 4954, m = 50
90 Correct 7 ms 1400 KB n = 4884, m = 49
91 Correct 10 ms 1272 KB n = 4307, m = 100
92 Correct 11 ms 1400 KB n = 4668, m = 100
93 Correct 8 ms 1400 KB n = 4647, m = 100
94 Correct 10 ms 1272 KB n = 4372, m = 100
95 Correct 11 ms 1400 KB n = 4791, m = 100
96 Correct 10 ms 1148 KB n = 4029, m = 100
97 Correct 10 ms 1400 KB n = 4439, m = 100
98 Correct 10 ms 1272 KB n = 4018, m = 100
99 Correct 12 ms 1400 KB n = 4979, m = 100
100 Correct 11 ms 1400 KB n = 4996, m = 89
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB n = 13, m = 1
2 Correct 2 ms 248 KB n = 18, m = 1
3 Correct 2 ms 376 KB n = 17, m = 1
4 Correct 2 ms 376 KB n = 1, m = 1
5 Correct 14 ms 376 KB n = 20, m = 1
6 Correct 2 ms 376 KB n = 20, m = 1
7 Correct 2 ms 376 KB n = 20, m = 1
8 Correct 2 ms 380 KB n = 20, m = 5
9 Correct 2 ms 376 KB n = 18, m = 3
10 Correct 2 ms 376 KB n = 17, m = 2
11 Correct 0 ms 376 KB n = 20, m = 2
12 Correct 2 ms 376 KB n = 17, m = 4
13 Correct 2 ms 376 KB n = 17, m = 6
14 Correct 2 ms 376 KB n = 17, m = 1
15 Correct 2 ms 376 KB n = 17, m = 4
16 Correct 2 ms 376 KB n = 13, m = 3
17 Correct 2 ms 376 KB n = 18, m = 4
18 Correct 2 ms 376 KB n = 20, m = 10
19 Correct 2 ms 376 KB n = 19, m = 10
20 Correct 2 ms 376 KB n = 100, m = 5
21 Correct 2 ms 372 KB n = 90, m = 3
22 Correct 2 ms 376 KB n = 86, m = 2
23 Correct 2 ms 376 KB n = 81, m = 4
24 Correct 2 ms 376 KB n = 89, m = 10
25 Correct 2 ms 376 KB n = 81, m = 23
26 Correct 2 ms 376 KB n = 86, m = 8
27 Correct 2 ms 380 KB n = 53, m = 22
28 Correct 2 ms 376 KB n = 89, m = 35
29 Correct 10 ms 376 KB n = 63, m = 25
30 Correct 2 ms 376 KB n = 100, m = 50
31 Correct 2 ms 376 KB n = 99, m = 50
32 Correct 2 ms 376 KB n = 13, m = 4
33 Correct 2 ms 376 KB n = 86, m = 2
34 Correct 2 ms 376 KB n = 88, m = 2
35 Correct 2 ms 376 KB n = 86, m = 2
36 Correct 2 ms 376 KB n = 81, m = 6
37 Correct 2 ms 376 KB n = 98, m = 7
38 Correct 2 ms 376 KB n = 92, m = 7
39 Correct 2 ms 376 KB n = 88, m = 21
40 Correct 2 ms 376 KB n = 90, m = 21
41 Correct 2 ms 376 KB n = 98, m = 22
42 Correct 2 ms 376 KB n = 11, m = 2
43 Correct 2 ms 376 KB n = 11, m = 2
44 Correct 2 ms 376 KB n = 13, m = 3
45 Correct 2 ms 376 KB n = 86, m = 2
46 Correct 2 ms 376 KB n = 81, m = 2
47 Correct 2 ms 376 KB n = 93, m = 2
48 Correct 2 ms 376 KB n = 81, m = 2
49 Correct 2 ms 376 KB n = 86, m = 2
50 Correct 2 ms 376 KB n = 90, m = 2
51 Correct 2 ms 376 KB n = 87, m = 2
52 Correct 2 ms 376 KB n = 97, m = 2
53 Correct 2 ms 376 KB n = 85, m = 2
54 Correct 2 ms 376 KB n = 88, m = 7
55 Correct 2 ms 376 KB n = 96, m = 7
56 Correct 2 ms 376 KB n = 85, m = 7
57 Correct 3 ms 380 KB n = 92, m = 7
58 Correct 2 ms 376 KB n = 92, m = 7
59 Correct 2 ms 364 KB n = 86, m = 7
60 Correct 2 ms 376 KB n = 87, m = 7
61 Correct 2 ms 376 KB n = 100, m = 7
62 Correct 2 ms 376 KB n = 100, m = 7
63 Correct 2 ms 296 KB n = 92, m = 21
64 Correct 2 ms 376 KB n = 93, m = 22
65 Correct 2 ms 372 KB n = 95, m = 22
66 Correct 2 ms 376 KB n = 98, m = 22
67 Correct 2 ms 376 KB n = 94, m = 22
68 Correct 2 ms 376 KB n = 93, m = 22
69 Correct 2 ms 376 KB n = 88, m = 21
70 Correct 2 ms 376 KB n = 83, m = 20
71 Correct 2 ms 380 KB n = 99, m = 23
72 Correct 2 ms 372 KB n = 96, m = 19
73 Correct 3 ms 1400 KB n = 4825, m = 5
74 Correct 3 ms 1272 KB n = 4384, m = 5
75 Correct 3 ms 1400 KB n = 4528, m = 5
76 Correct 3 ms 1400 KB n = 4980, m = 5
77 Correct 3 ms 1400 KB n = 4730, m = 5
78 Correct 3 ms 1400 KB n = 4784, m = 5
79 Correct 3 ms 1400 KB n = 4875, m = 5
80 Correct 3 ms 1400 KB n = 4576, m = 5
81 Correct 3 ms 1272 KB n = 4297, m = 5
82 Correct 7 ms 1400 KB n = 4662, m = 48
83 Correct 7 ms 1400 KB n = 4753, m = 49
84 Correct 6 ms 1272 KB n = 4148, m = 46
85 Correct 6 ms 1400 KB n = 4906, m = 50
86 Correct 7 ms 1404 KB n = 4967, m = 50
87 Correct 7 ms 1400 KB n = 4828, m = 49
88 Correct 6 ms 1272 KB n = 4105, m = 45
89 Correct 7 ms 1400 KB n = 4954, m = 50
90 Correct 7 ms 1400 KB n = 4884, m = 49
91 Correct 10 ms 1272 KB n = 4307, m = 100
92 Correct 11 ms 1400 KB n = 4668, m = 100
93 Correct 8 ms 1400 KB n = 4647, m = 100
94 Correct 10 ms 1272 KB n = 4372, m = 100
95 Correct 11 ms 1400 KB n = 4791, m = 100
96 Correct 10 ms 1148 KB n = 4029, m = 100
97 Correct 10 ms 1400 KB n = 4439, m = 100
98 Correct 10 ms 1272 KB n = 4018, m = 100
99 Correct 12 ms 1400 KB n = 4979, m = 100
100 Correct 11 ms 1400 KB n = 4996, m = 89
101 Correct 193 ms 38836 KB n = 178952, m = 10
102 Correct 96 ms 39216 KB n = 180674, m = 10
103 Correct 83 ms 36500 KB n = 167639, m = 10
104 Correct 82 ms 37560 KB n = 172892, m = 10
105 Correct 89 ms 36608 KB n = 168125, m = 10
106 Correct 81 ms 36128 KB n = 166514, m = 10
107 Correct 89 ms 39940 KB n = 183874, m = 10
108 Correct 97 ms 42192 KB n = 194560, m = 10
109 Correct 83 ms 37424 KB n = 171994, m = 10
110 Correct 444 ms 35992 KB n = 165207, m = 100
111 Correct 606 ms 41004 KB n = 188459, m = 100
112 Correct 448 ms 35332 KB n = 162137, m = 100
113 Correct 470 ms 36844 KB n = 169691, m = 100
114 Correct 531 ms 40892 KB n = 187642, m = 100
115 Correct 394 ms 36612 KB n = 168456, m = 100
116 Correct 452 ms 39468 KB n = 180980, m = 100
117 Correct 570 ms 41640 KB n = 191687, m = 100
118 Correct 433 ms 36280 KB n = 166437, m = 100
119 Correct 555 ms 40504 KB n = 186520, m = 100
120 Correct 454 ms 36372 KB n = 166675, m = 100
121 Correct 582 ms 40744 KB n = 187725, m = 100
122 Correct 388 ms 35064 KB n = 161455, m = 100
123 Correct 519 ms 41932 KB n = 192977, m = 100
124 Correct 543 ms 41868 KB n = 192612, m = 100
125 Correct 574 ms 42620 KB n = 196512, m = 100
126 Correct 532 ms 43268 KB n = 198968, m = 100
127 Correct 397 ms 36380 KB n = 166659, m = 100
128 Correct 268 ms 43492 KB n = 199997, m = 34
129 Correct 52 ms 43380 KB n = 200000, m = 1
130 Correct 52 ms 43372 KB n = 200000, m = 1
131 Correct 805 ms 43480 KB n = 199999, m = 100
132 Correct 755 ms 43376 KB n = 199999, m = 100
133 Correct 48 ms 43376 KB n = 200000, m = 1