Submission #919609

# Submission time Handle Problem Language Result Execution time Memory
919609 2024-02-01T08:47:10 Z StefanL2005 Paint By Numbers (IOI16_paint) C++14
100 / 100
1022 ms 161104 KB
#include <bits/stdc++.h>
using namespace std;
ifstream in("file.in");


int get_between(int i, int j, vector<int> &Pre_Sum)
{
    if (i > j)
        swap(i, j);
    if (i == 0)
        return Pre_Sum[j];
    return Pre_Sum[j] - Pre_Sum[i - 1];
}

bool check_block_borders(int i, int j, string &s)
{
    int l = s.length();

    if (i <= 0 || s[i - 1] != 'X')
        if (j >= l - 1 || s[j + 1] != 'X')
            return true;
    return false;
}

int check_block_P (int i, int j, int add, vector<vector<int>> &P, string &s, vector<int> &Pre_Sum)
{
    if (j - add + 1 < 0)
        return 0;
    if (get_between(j - add + 1, j, Pre_Sum) > 0)
        return 0;
    if (!check_block_borders(j - add + 1, j, s))
        return 0;
    if (j - add > 0)
        return P[i - 1][j - add - 1];
    return i == 1;
}

int check_block_S (int i, int j, int add, vector<vector<int>> &S, string &s, vector<int> &Pre_Sum)
{
    int l = s.length();
    if (j + add - 1 >= l)
        return 0;
    if (get_between(j, j + add - 1, Pre_Sum) > 0)
        return 0;
    if (!check_block_borders(j, j + add - 1, s))
        return 0;
    if (j + add < l - 1)
        return S[i - 1][j + add + 1];
    return i == 1;
}

void first_line_init(int i, int j, string &s, vector<vector<int>> &M)
{
    while (i != j)
    {
        M[0][i] = 1;
        if (s[i] == 'X')
            { M[0][i] = 0; break; }

        if (i < j) i++;
        else i--;
    }
}

bool can_end_1 (int i, int j, vector<vector<int>> &P, vector<vector<int>> &S)
{
    int k = P.size() - 1, l = P[0].size();

    bool p1 = (i == 0 && j == 0) || (i > 0 && P[j][i - 1]);
    bool p2 = (i == l - 1 && j == k) || (i < l - 1 && S[k - j][i + 1]);
    return p1 && p2;
}

bool can_end_2 (int i, int j, int add, vector<vector<int>> &P, vector<vector<int>> &S)
{
    int k = P.size() - 1, l = P[0].size();

    bool p1 = ((j <= 1 && i == 1) || (j > 1 && P[i - 1][j - 2]));
    bool p2 = ((j + add >= l - 1 && k == i) || (j + add < l - 1 && S[k - i][j + add + 1]));
    return (p1 && p2);
}

void fill_ans (string &ans, int j, int add)
{
    for (int i = j; i < j + add; i++)
        if (ans[i] == '_')
            ans[i] = '?';
}

string solve_puzzle (string s, vector<int> c)
{
    int k = c.size(), l = s.length();
    bool change_back = false;
    string ans;
    vector<int> Pre_Sum;
    vector<vector<int>> P, S;

    Pre_Sum = vector<int> (l, 0);
    P = S = vector<vector<int>> (k + 1, vector<int> (l, 0));
    ans.assign(l, '_');

    for (int i = 0; i < l; i++)
    {
        if (s[i] == 'X')
            ans[i] = 'X';
        if (s[i] == '_')
            Pre_Sum[i]++;
        if (i > 0)
            Pre_Sum[i]+= Pre_Sum[i - 1];
    }

    first_line_init(0, l, s, P);
    for (int i = 1; i <= k; i++)
        for (int j = 0; j < l; j++)
        {
            bool _Case = 0, XCase;
            if (j > 0)
                _Case = P[i][j - 1];
            XCase = check_block_P(i, j, c[i - 1], P, s, Pre_Sum);

            switch(s[j])
            {
                case '_':{ P[i][j] = _Case; break; }
                case 'X':{ P[i][j] = XCase; break; }
                case '.':{ P[i][j] = _Case || XCase; break; }
            }
        }

    first_line_init(l - 1, -1, s, S);
    for (int i = 1; i <= k; i++)
        for (int j = l - 1; j >= 0; j--)
        {
            bool _Case = 0, XCase;
            if (j + 1 < l)
                _Case = S[i][j + 1];
            XCase = check_block_S(i, j, c[k - i], S, s, Pre_Sum);

            switch(s[j])
            {
                case '_':{ S[i][j] = _Case; break; }
                case 'X':{ S[i][j] = XCase; break; }
                case '.':{ S[i][j] = _Case || XCase; break; }
            }
        }

    for (int i = 0; i < l; i++)
    {
        bool ok = true;

        for (int j = 0; j <= k && ok; j++)
            if (can_end_1(i, j, P, S))
                ok = false;

        if (ok)
            ans[i] = 'X';
    }

    for (int i = 1; i <= k; i++)
    {
        int add = c[i - 1];
        for (int j = 0; j <= l - add; j++)
        {
            if (get_between(j, j + add - 1, Pre_Sum) > 0)
                continue;
            if (!check_block_borders(j, j + add - 1, ans))
                continue;
            if (!can_end_2(i, j, add, P, S))
                continue;
            fill_ans(ans, j, add);
        }
    }
    return ans;
}

Compilation message

paint.cpp: In function 'std::string solve_puzzle(std::string, std::vector<int>)':
paint.cpp:93:10: warning: unused variable 'change_back' [-Wunused-variable]
   93 |     bool change_back = false;
      |          ^~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB n = 13, m = 1
2 Correct 0 ms 344 KB n = 18, m = 1
3 Correct 0 ms 348 KB n = 17, m = 1
4 Correct 1 ms 344 KB n = 1, m = 1
5 Correct 0 ms 348 KB n = 20, m = 1
6 Correct 1 ms 348 KB n = 20, m = 1
7 Correct 1 ms 348 KB n = 20, m = 1
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB n = 13, m = 1
2 Correct 0 ms 344 KB n = 18, m = 1
3 Correct 0 ms 348 KB n = 17, m = 1
4 Correct 1 ms 344 KB n = 1, m = 1
5 Correct 0 ms 348 KB n = 20, m = 1
6 Correct 1 ms 348 KB n = 20, m = 1
7 Correct 1 ms 348 KB n = 20, m = 1
8 Correct 0 ms 344 KB n = 20, m = 5
9 Correct 0 ms 344 KB n = 18, m = 3
10 Correct 0 ms 348 KB n = 17, m = 2
11 Correct 0 ms 344 KB n = 20, m = 2
12 Correct 0 ms 344 KB n = 17, m = 4
13 Correct 0 ms 348 KB n = 17, m = 6
14 Correct 1 ms 348 KB n = 17, m = 1
15 Correct 0 ms 348 KB n = 17, m = 4
16 Correct 1 ms 348 KB n = 13, m = 3
17 Correct 1 ms 344 KB n = 18, m = 4
18 Correct 0 ms 344 KB n = 20, m = 10
19 Correct 0 ms 348 KB n = 19, m = 10
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB n = 13, m = 1
2 Correct 0 ms 344 KB n = 18, m = 1
3 Correct 0 ms 348 KB n = 17, m = 1
4 Correct 1 ms 344 KB n = 1, m = 1
5 Correct 0 ms 348 KB n = 20, m = 1
6 Correct 1 ms 348 KB n = 20, m = 1
7 Correct 1 ms 348 KB n = 20, m = 1
8 Correct 0 ms 344 KB n = 20, m = 5
9 Correct 0 ms 344 KB n = 18, m = 3
10 Correct 0 ms 348 KB n = 17, m = 2
11 Correct 0 ms 344 KB n = 20, m = 2
12 Correct 0 ms 344 KB n = 17, m = 4
13 Correct 0 ms 348 KB n = 17, m = 6
14 Correct 1 ms 348 KB n = 17, m = 1
15 Correct 0 ms 348 KB n = 17, m = 4
16 Correct 1 ms 348 KB n = 13, m = 3
17 Correct 1 ms 344 KB n = 18, m = 4
18 Correct 0 ms 344 KB n = 20, m = 10
19 Correct 0 ms 348 KB n = 19, m = 10
20 Correct 0 ms 344 KB n = 100, m = 5
21 Correct 0 ms 348 KB n = 90, m = 3
22 Correct 0 ms 344 KB n = 86, m = 2
23 Correct 0 ms 344 KB n = 81, m = 4
24 Correct 1 ms 344 KB n = 89, m = 10
25 Correct 1 ms 348 KB n = 81, m = 23
26 Correct 1 ms 344 KB n = 86, m = 8
27 Correct 0 ms 344 KB n = 53, m = 22
28 Correct 1 ms 344 KB n = 89, m = 35
29 Correct 1 ms 344 KB n = 63, m = 25
30 Correct 1 ms 348 KB n = 100, m = 50
31 Correct 1 ms 344 KB n = 99, m = 50
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB n = 13, m = 1
2 Correct 0 ms 344 KB n = 18, m = 1
3 Correct 0 ms 348 KB n = 17, m = 1
4 Correct 1 ms 344 KB n = 1, m = 1
5 Correct 0 ms 348 KB n = 20, m = 1
6 Correct 1 ms 348 KB n = 20, m = 1
7 Correct 1 ms 348 KB n = 20, m = 1
8 Correct 0 ms 344 KB n = 20, m = 5
9 Correct 0 ms 344 KB n = 18, m = 3
10 Correct 0 ms 348 KB n = 17, m = 2
11 Correct 0 ms 344 KB n = 20, m = 2
12 Correct 0 ms 344 KB n = 17, m = 4
13 Correct 0 ms 348 KB n = 17, m = 6
14 Correct 1 ms 348 KB n = 17, m = 1
15 Correct 0 ms 348 KB n = 17, m = 4
16 Correct 1 ms 348 KB n = 13, m = 3
17 Correct 1 ms 344 KB n = 18, m = 4
18 Correct 0 ms 344 KB n = 20, m = 10
19 Correct 0 ms 348 KB n = 19, m = 10
20 Correct 0 ms 344 KB n = 100, m = 5
21 Correct 0 ms 348 KB n = 90, m = 3
22 Correct 0 ms 344 KB n = 86, m = 2
23 Correct 0 ms 344 KB n = 81, m = 4
24 Correct 1 ms 344 KB n = 89, m = 10
25 Correct 1 ms 348 KB n = 81, m = 23
26 Correct 1 ms 344 KB n = 86, m = 8
27 Correct 0 ms 344 KB n = 53, m = 22
28 Correct 1 ms 344 KB n = 89, m = 35
29 Correct 1 ms 344 KB n = 63, m = 25
30 Correct 1 ms 348 KB n = 100, m = 50
31 Correct 1 ms 344 KB n = 99, m = 50
32 Correct 0 ms 344 KB n = 13, m = 4
33 Correct 0 ms 344 KB n = 86, m = 2
34 Correct 1 ms 500 KB n = 88, m = 2
35 Correct 0 ms 348 KB n = 86, m = 2
36 Correct 0 ms 344 KB n = 81, m = 6
37 Correct 0 ms 344 KB n = 98, m = 7
38 Correct 0 ms 344 KB n = 92, m = 7
39 Correct 0 ms 348 KB n = 88, m = 21
40 Correct 0 ms 344 KB n = 90, m = 21
41 Correct 0 ms 348 KB n = 98, m = 22
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB n = 13, m = 1
2 Correct 0 ms 344 KB n = 18, m = 1
3 Correct 0 ms 348 KB n = 17, m = 1
4 Correct 1 ms 344 KB n = 1, m = 1
5 Correct 0 ms 348 KB n = 20, m = 1
6 Correct 1 ms 348 KB n = 20, m = 1
7 Correct 1 ms 348 KB n = 20, m = 1
8 Correct 0 ms 344 KB n = 20, m = 5
9 Correct 0 ms 344 KB n = 18, m = 3
10 Correct 0 ms 348 KB n = 17, m = 2
11 Correct 0 ms 344 KB n = 20, m = 2
12 Correct 0 ms 344 KB n = 17, m = 4
13 Correct 0 ms 348 KB n = 17, m = 6
14 Correct 1 ms 348 KB n = 17, m = 1
15 Correct 0 ms 348 KB n = 17, m = 4
16 Correct 1 ms 348 KB n = 13, m = 3
17 Correct 1 ms 344 KB n = 18, m = 4
18 Correct 0 ms 344 KB n = 20, m = 10
19 Correct 0 ms 348 KB n = 19, m = 10
20 Correct 0 ms 344 KB n = 100, m = 5
21 Correct 0 ms 348 KB n = 90, m = 3
22 Correct 0 ms 344 KB n = 86, m = 2
23 Correct 0 ms 344 KB n = 81, m = 4
24 Correct 1 ms 344 KB n = 89, m = 10
25 Correct 1 ms 348 KB n = 81, m = 23
26 Correct 1 ms 344 KB n = 86, m = 8
27 Correct 0 ms 344 KB n = 53, m = 22
28 Correct 1 ms 344 KB n = 89, m = 35
29 Correct 1 ms 344 KB n = 63, m = 25
30 Correct 1 ms 348 KB n = 100, m = 50
31 Correct 1 ms 344 KB n = 99, m = 50
32 Correct 0 ms 344 KB n = 13, m = 4
33 Correct 0 ms 344 KB n = 86, m = 2
34 Correct 1 ms 500 KB n = 88, m = 2
35 Correct 0 ms 348 KB n = 86, m = 2
36 Correct 0 ms 344 KB n = 81, m = 6
37 Correct 0 ms 344 KB n = 98, m = 7
38 Correct 0 ms 344 KB n = 92, m = 7
39 Correct 0 ms 348 KB n = 88, m = 21
40 Correct 0 ms 344 KB n = 90, m = 21
41 Correct 0 ms 348 KB n = 98, m = 22
42 Correct 0 ms 344 KB n = 11, m = 2
43 Correct 0 ms 344 KB n = 11, m = 2
44 Correct 0 ms 344 KB n = 13, m = 3
45 Correct 0 ms 344 KB n = 86, m = 2
46 Correct 0 ms 344 KB n = 81, m = 2
47 Correct 0 ms 348 KB n = 93, m = 2
48 Correct 0 ms 348 KB n = 81, m = 2
49 Correct 0 ms 344 KB n = 86, m = 2
50 Correct 1 ms 344 KB n = 90, m = 2
51 Correct 0 ms 344 KB n = 87, m = 2
52 Correct 0 ms 344 KB n = 97, m = 2
53 Correct 0 ms 344 KB n = 85, m = 2
54 Correct 1 ms 344 KB n = 88, m = 7
55 Correct 1 ms 344 KB n = 96, m = 7
56 Correct 0 ms 348 KB n = 85, m = 7
57 Correct 0 ms 344 KB n = 92, m = 7
58 Correct 0 ms 344 KB n = 92, m = 7
59 Correct 0 ms 348 KB n = 86, m = 7
60 Correct 0 ms 344 KB n = 87, m = 7
61 Correct 0 ms 344 KB n = 100, m = 7
62 Correct 0 ms 344 KB n = 100, m = 7
63 Correct 0 ms 344 KB n = 92, m = 21
64 Correct 1 ms 348 KB n = 93, m = 22
65 Correct 1 ms 344 KB n = 95, m = 22
66 Correct 1 ms 344 KB n = 98, m = 22
67 Correct 1 ms 348 KB n = 94, m = 22
68 Correct 0 ms 348 KB n = 93, m = 22
69 Correct 0 ms 344 KB n = 88, m = 21
70 Correct 0 ms 344 KB n = 83, m = 20
71 Correct 1 ms 344 KB n = 99, m = 23
72 Correct 0 ms 344 KB n = 96, m = 19
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB n = 13, m = 1
2 Correct 0 ms 344 KB n = 18, m = 1
3 Correct 0 ms 348 KB n = 17, m = 1
4 Correct 1 ms 344 KB n = 1, m = 1
5 Correct 0 ms 348 KB n = 20, m = 1
6 Correct 1 ms 348 KB n = 20, m = 1
7 Correct 1 ms 348 KB n = 20, m = 1
8 Correct 0 ms 344 KB n = 20, m = 5
9 Correct 0 ms 344 KB n = 18, m = 3
10 Correct 0 ms 348 KB n = 17, m = 2
11 Correct 0 ms 344 KB n = 20, m = 2
12 Correct 0 ms 344 KB n = 17, m = 4
13 Correct 0 ms 348 KB n = 17, m = 6
14 Correct 1 ms 348 KB n = 17, m = 1
15 Correct 0 ms 348 KB n = 17, m = 4
16 Correct 1 ms 348 KB n = 13, m = 3
17 Correct 1 ms 344 KB n = 18, m = 4
18 Correct 0 ms 344 KB n = 20, m = 10
19 Correct 0 ms 348 KB n = 19, m = 10
20 Correct 0 ms 344 KB n = 100, m = 5
21 Correct 0 ms 348 KB n = 90, m = 3
22 Correct 0 ms 344 KB n = 86, m = 2
23 Correct 0 ms 344 KB n = 81, m = 4
24 Correct 1 ms 344 KB n = 89, m = 10
25 Correct 1 ms 348 KB n = 81, m = 23
26 Correct 1 ms 344 KB n = 86, m = 8
27 Correct 0 ms 344 KB n = 53, m = 22
28 Correct 1 ms 344 KB n = 89, m = 35
29 Correct 1 ms 344 KB n = 63, m = 25
30 Correct 1 ms 348 KB n = 100, m = 50
31 Correct 1 ms 344 KB n = 99, m = 50
32 Correct 0 ms 344 KB n = 13, m = 4
33 Correct 0 ms 344 KB n = 86, m = 2
34 Correct 1 ms 500 KB n = 88, m = 2
35 Correct 0 ms 348 KB n = 86, m = 2
36 Correct 0 ms 344 KB n = 81, m = 6
37 Correct 0 ms 344 KB n = 98, m = 7
38 Correct 0 ms 344 KB n = 92, m = 7
39 Correct 0 ms 348 KB n = 88, m = 21
40 Correct 0 ms 344 KB n = 90, m = 21
41 Correct 0 ms 348 KB n = 98, m = 22
42 Correct 0 ms 344 KB n = 11, m = 2
43 Correct 0 ms 344 KB n = 11, m = 2
44 Correct 0 ms 344 KB n = 13, m = 3
45 Correct 0 ms 344 KB n = 86, m = 2
46 Correct 0 ms 344 KB n = 81, m = 2
47 Correct 0 ms 348 KB n = 93, m = 2
48 Correct 0 ms 348 KB n = 81, m = 2
49 Correct 0 ms 344 KB n = 86, m = 2
50 Correct 1 ms 344 KB n = 90, m = 2
51 Correct 0 ms 344 KB n = 87, m = 2
52 Correct 0 ms 344 KB n = 97, m = 2
53 Correct 0 ms 344 KB n = 85, m = 2
54 Correct 1 ms 344 KB n = 88, m = 7
55 Correct 1 ms 344 KB n = 96, m = 7
56 Correct 0 ms 348 KB n = 85, m = 7
57 Correct 0 ms 344 KB n = 92, m = 7
58 Correct 0 ms 344 KB n = 92, m = 7
59 Correct 0 ms 348 KB n = 86, m = 7
60 Correct 0 ms 344 KB n = 87, m = 7
61 Correct 0 ms 344 KB n = 100, m = 7
62 Correct 0 ms 344 KB n = 100, m = 7
63 Correct 0 ms 344 KB n = 92, m = 21
64 Correct 1 ms 348 KB n = 93, m = 22
65 Correct 1 ms 344 KB n = 95, m = 22
66 Correct 1 ms 344 KB n = 98, m = 22
67 Correct 1 ms 348 KB n = 94, m = 22
68 Correct 0 ms 348 KB n = 93, m = 22
69 Correct 0 ms 344 KB n = 88, m = 21
70 Correct 0 ms 344 KB n = 83, m = 20
71 Correct 1 ms 344 KB n = 99, m = 23
72 Correct 0 ms 344 KB n = 96, m = 19
73 Correct 1 ms 600 KB n = 4825, m = 5
74 Correct 1 ms 600 KB n = 4384, m = 5
75 Correct 1 ms 856 KB n = 4528, m = 5
76 Correct 1 ms 604 KB n = 4980, m = 5
77 Correct 1 ms 600 KB n = 4730, m = 5
78 Correct 1 ms 604 KB n = 4784, m = 5
79 Correct 1 ms 800 KB n = 4875, m = 5
80 Correct 1 ms 604 KB n = 4576, m = 5
81 Correct 1 ms 600 KB n = 4297, m = 5
82 Correct 6 ms 2136 KB n = 4662, m = 48
83 Correct 6 ms 2140 KB n = 4753, m = 49
84 Correct 5 ms 1880 KB n = 4148, m = 46
85 Correct 5 ms 2392 KB n = 4906, m = 50
86 Correct 5 ms 2648 KB n = 4967, m = 50
87 Correct 6 ms 2136 KB n = 4828, m = 49
88 Correct 4 ms 1880 KB n = 4105, m = 45
89 Correct 5 ms 2396 KB n = 4954, m = 50
90 Correct 7 ms 2392 KB n = 4884, m = 49
91 Correct 11 ms 3672 KB n = 4307, m = 100
92 Correct 17 ms 4440 KB n = 4668, m = 100
93 Correct 13 ms 3928 KB n = 4647, m = 100
94 Correct 12 ms 3928 KB n = 4372, m = 100
95 Correct 11 ms 4184 KB n = 4791, m = 100
96 Correct 10 ms 3428 KB n = 4029, m = 100
97 Correct 12 ms 3928 KB n = 4439, m = 100
98 Correct 10 ms 3416 KB n = 4018, m = 100
99 Correct 12 ms 4184 KB n = 4979, m = 100
100 Correct 9 ms 3928 KB n = 4996, m = 89
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB n = 13, m = 1
2 Correct 0 ms 344 KB n = 18, m = 1
3 Correct 0 ms 348 KB n = 17, m = 1
4 Correct 1 ms 344 KB n = 1, m = 1
5 Correct 0 ms 348 KB n = 20, m = 1
6 Correct 1 ms 348 KB n = 20, m = 1
7 Correct 1 ms 348 KB n = 20, m = 1
8 Correct 0 ms 344 KB n = 20, m = 5
9 Correct 0 ms 344 KB n = 18, m = 3
10 Correct 0 ms 348 KB n = 17, m = 2
11 Correct 0 ms 344 KB n = 20, m = 2
12 Correct 0 ms 344 KB n = 17, m = 4
13 Correct 0 ms 348 KB n = 17, m = 6
14 Correct 1 ms 348 KB n = 17, m = 1
15 Correct 0 ms 348 KB n = 17, m = 4
16 Correct 1 ms 348 KB n = 13, m = 3
17 Correct 1 ms 344 KB n = 18, m = 4
18 Correct 0 ms 344 KB n = 20, m = 10
19 Correct 0 ms 348 KB n = 19, m = 10
20 Correct 0 ms 344 KB n = 100, m = 5
21 Correct 0 ms 348 KB n = 90, m = 3
22 Correct 0 ms 344 KB n = 86, m = 2
23 Correct 0 ms 344 KB n = 81, m = 4
24 Correct 1 ms 344 KB n = 89, m = 10
25 Correct 1 ms 348 KB n = 81, m = 23
26 Correct 1 ms 344 KB n = 86, m = 8
27 Correct 0 ms 344 KB n = 53, m = 22
28 Correct 1 ms 344 KB n = 89, m = 35
29 Correct 1 ms 344 KB n = 63, m = 25
30 Correct 1 ms 348 KB n = 100, m = 50
31 Correct 1 ms 344 KB n = 99, m = 50
32 Correct 0 ms 344 KB n = 13, m = 4
33 Correct 0 ms 344 KB n = 86, m = 2
34 Correct 1 ms 500 KB n = 88, m = 2
35 Correct 0 ms 348 KB n = 86, m = 2
36 Correct 0 ms 344 KB n = 81, m = 6
37 Correct 0 ms 344 KB n = 98, m = 7
38 Correct 0 ms 344 KB n = 92, m = 7
39 Correct 0 ms 348 KB n = 88, m = 21
40 Correct 0 ms 344 KB n = 90, m = 21
41 Correct 0 ms 348 KB n = 98, m = 22
42 Correct 0 ms 344 KB n = 11, m = 2
43 Correct 0 ms 344 KB n = 11, m = 2
44 Correct 0 ms 344 KB n = 13, m = 3
45 Correct 0 ms 344 KB n = 86, m = 2
46 Correct 0 ms 344 KB n = 81, m = 2
47 Correct 0 ms 348 KB n = 93, m = 2
48 Correct 0 ms 348 KB n = 81, m = 2
49 Correct 0 ms 344 KB n = 86, m = 2
50 Correct 1 ms 344 KB n = 90, m = 2
51 Correct 0 ms 344 KB n = 87, m = 2
52 Correct 0 ms 344 KB n = 97, m = 2
53 Correct 0 ms 344 KB n = 85, m = 2
54 Correct 1 ms 344 KB n = 88, m = 7
55 Correct 1 ms 344 KB n = 96, m = 7
56 Correct 0 ms 348 KB n = 85, m = 7
57 Correct 0 ms 344 KB n = 92, m = 7
58 Correct 0 ms 344 KB n = 92, m = 7
59 Correct 0 ms 348 KB n = 86, m = 7
60 Correct 0 ms 344 KB n = 87, m = 7
61 Correct 0 ms 344 KB n = 100, m = 7
62 Correct 0 ms 344 KB n = 100, m = 7
63 Correct 0 ms 344 KB n = 92, m = 21
64 Correct 1 ms 348 KB n = 93, m = 22
65 Correct 1 ms 344 KB n = 95, m = 22
66 Correct 1 ms 344 KB n = 98, m = 22
67 Correct 1 ms 348 KB n = 94, m = 22
68 Correct 0 ms 348 KB n = 93, m = 22
69 Correct 0 ms 344 KB n = 88, m = 21
70 Correct 0 ms 344 KB n = 83, m = 20
71 Correct 1 ms 344 KB n = 99, m = 23
72 Correct 0 ms 344 KB n = 96, m = 19
73 Correct 1 ms 600 KB n = 4825, m = 5
74 Correct 1 ms 600 KB n = 4384, m = 5
75 Correct 1 ms 856 KB n = 4528, m = 5
76 Correct 1 ms 604 KB n = 4980, m = 5
77 Correct 1 ms 600 KB n = 4730, m = 5
78 Correct 1 ms 604 KB n = 4784, m = 5
79 Correct 1 ms 800 KB n = 4875, m = 5
80 Correct 1 ms 604 KB n = 4576, m = 5
81 Correct 1 ms 600 KB n = 4297, m = 5
82 Correct 6 ms 2136 KB n = 4662, m = 48
83 Correct 6 ms 2140 KB n = 4753, m = 49
84 Correct 5 ms 1880 KB n = 4148, m = 46
85 Correct 5 ms 2392 KB n = 4906, m = 50
86 Correct 5 ms 2648 KB n = 4967, m = 50
87 Correct 6 ms 2136 KB n = 4828, m = 49
88 Correct 4 ms 1880 KB n = 4105, m = 45
89 Correct 5 ms 2396 KB n = 4954, m = 50
90 Correct 7 ms 2392 KB n = 4884, m = 49
91 Correct 11 ms 3672 KB n = 4307, m = 100
92 Correct 17 ms 4440 KB n = 4668, m = 100
93 Correct 13 ms 3928 KB n = 4647, m = 100
94 Correct 12 ms 3928 KB n = 4372, m = 100
95 Correct 11 ms 4184 KB n = 4791, m = 100
96 Correct 10 ms 3428 KB n = 4029, m = 100
97 Correct 12 ms 3928 KB n = 4439, m = 100
98 Correct 10 ms 3416 KB n = 4018, m = 100
99 Correct 12 ms 4184 KB n = 4979, m = 100
100 Correct 9 ms 3928 KB n = 4996, m = 89
101 Correct 48 ms 17752 KB n = 178952, m = 10
102 Correct 41 ms 18012 KB n = 180674, m = 10
103 Correct 40 ms 16472 KB n = 167639, m = 10
104 Correct 41 ms 16984 KB n = 172892, m = 10
105 Correct 34 ms 16728 KB n = 168125, m = 10
106 Correct 34 ms 16472 KB n = 166514, m = 10
107 Correct 42 ms 18264 KB n = 183874, m = 10
108 Correct 37 ms 19288 KB n = 194560, m = 10
109 Correct 35 ms 16984 KB n = 171994, m = 10
110 Correct 466 ms 133200 KB n = 165207, m = 100
111 Correct 456 ms 152144 KB n = 188459, m = 100
112 Correct 389 ms 130896 KB n = 162137, m = 100
113 Correct 402 ms 136584 KB n = 169691, m = 100
114 Correct 435 ms 151376 KB n = 187642, m = 100
115 Correct 346 ms 135760 KB n = 168456, m = 100
116 Correct 428 ms 145504 KB n = 180980, m = 100
117 Correct 400 ms 154524 KB n = 191687, m = 100
118 Correct 327 ms 133968 KB n = 166437, m = 100
119 Correct 508 ms 150352 KB n = 186520, m = 100
120 Correct 425 ms 133968 KB n = 166675, m = 100
121 Correct 503 ms 151376 KB n = 187725, m = 100
122 Correct 391 ms 130028 KB n = 161455, m = 100
123 Correct 409 ms 155336 KB n = 192977, m = 100
124 Correct 407 ms 155472 KB n = 192612, m = 100
125 Correct 1022 ms 157920 KB n = 196512, m = 100
126 Correct 405 ms 160328 KB n = 198968, m = 100
127 Correct 333 ms 133968 KB n = 166659, m = 100
128 Correct 164 ms 57432 KB n = 199997, m = 34
129 Correct 7 ms 5720 KB n = 200000, m = 1
130 Correct 9 ms 5720 KB n = 200000, m = 1
131 Correct 412 ms 161104 KB n = 199999, m = 100
132 Correct 472 ms 161104 KB n = 199999, m = 100
133 Correct 6 ms 5720 KB n = 200000, m = 1