Submission #694967

# Submission time Handle Problem Language Result Execution time Memory
694967 2023-02-04T15:54:44 Z finn__ Boarding Passes (BOI22_passes) C++17
100 / 100
384 ms 19012 KB
#include <bits/stdc++.h>
using namespace std;

template <typename T>
struct PrefixSum
{
    vector<T> t;

    PrefixSum() {}

    PrefixSum(vector<T> const &v)
    {
        t = vector<T>(v.begin(), v.end());
        for (size_t i = 1; i < t.size(); i++)
            t[i] += t[i - 1];
    }

    T range_sum(size_t i, size_t j)
    {
        return t[j] - (i ? t[i - 1] : 0);
    }
};

vector<PrefixSum<unsigned>> group_sum;

unsigned sum_groups(size_t i, size_t j, unsigned mask)
{
    unsigned x = 0;
    for (unsigned k = 0; k < group_sum.size(); k++)
        if (mask & (1 << k))
            x += group_sum[k].range_sum(i, j);
    return x;
}

vector<vector<vector<unsigned>>> num_smaller_members, num_greater_members;

uint64_t sum_smaller_members(unsigned curr_group, unsigned k, unsigned mask)
{
    if (k == num_greater_members[curr_group][0].size())
        return 0;
    uint64_t x = 0;
    for (unsigned j = 0; j < num_smaller_members.size(); j++)
        if (mask & (1 << j))
            x += num_smaller_members[curr_group][j][k];
    return x;
}

uint64_t sum_greater_members(unsigned curr_group, unsigned k, unsigned mask)
{
    if (k == num_greater_members[curr_group][0].size())
        return 0;
    uint64_t x = 0;
    for (unsigned j = 0; j < num_greater_members.size(); j++)
        if (mask & (1 << j))
            x += num_greater_members[curr_group][j][k];
    return x;
}

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    string s;
    cin >> s;
    size_t n = s.size(), g = 1;
    for (char const &c : s)
        g = max<size_t>(g, c - 'A' + 1);

    vector<vector<unsigned>> groups(g);
    for (unsigned i = 0; i < n; i++)
        groups[s[i] - 'A'].push_back(i);

    group_sum = vector<PrefixSum<unsigned>>(g);
    for (unsigned i = 0; i < g; i++)
    {
        vector<unsigned> z(s.size(), 0);
        for (unsigned const &j : groups[i])
            z[j] = 1;
        group_sum[i] = PrefixSum(z);
    }

    // For each member of a group, the prefix / suffix sum of the number of
    // smaller / greater elements of the groups members
    num_smaller_members = vector<vector<vector<unsigned>>>(g, vector<vector<unsigned>>(g)),
    num_greater_members = vector<vector<vector<unsigned>>>(g, vector<vector<unsigned>>(g));

    for (size_t i = 0; i < g; i++)
    {
        for (size_t j = 0; j < g; j++)
        {
            num_smaller_members[i][j] = vector<unsigned>(groups[i].size());
            for (size_t k = 0; k < groups[i].size(); k++)
                num_smaller_members[i][j][k] = group_sum[j].range_sum(0, groups[i][k]);

            num_greater_members[i][j] = vector<unsigned>(groups[i].size());
            for (size_t k = 0; k < groups[i].size(); k++)
                num_greater_members[i][j][k] = group_sum[j].range_sum(groups[i][k], n - 1);

            for (size_t k = 1; k < groups[i].size(); k++)
                num_smaller_members[i][j][k] += num_smaller_members[i][j][k - 1];
            for (size_t k = groups[i].size() - 2; k < groups[i].size(); k--)
                num_greater_members[i][j][k] += num_greater_members[i][j][k + 1];
        }
    }

    vector<uint64_t> dp(1 << g, UINT64_MAX);
    dp[0] = 0;

    for (unsigned mask = 0; mask < 1U << g; mask++)
    {
        for (unsigned i = 0; i < g; i++)
            if (mask & (1 << i)) // Let i be the last group borded.
            {
                // Binary search over the members of i for the point where it
                // is better to board from the back than from the front.
                size_t a = 0, b = groups[i].size();
                while (a < b)
                {
                    size_t mid = (a + b) / 2;
                    unsigned front_cost =
                        sum_groups(0, groups[i][mid], mask ^ (1 << i)) * 2 +
                        sum_groups(0, groups[i][mid], 1 << i) - 1;
                    unsigned back_cost =
                        sum_groups(groups[i][mid], n - 1, mask ^ (1 << i)) * 2 +
                        sum_groups(groups[i][mid], n - 1, 1 << i) - 1;

                    if (front_cost < back_cost)
                        a = mid + 1;
                    else
                        b = mid;
                }

                // a is the first to board backwards.
                dp[mask] = min<uint64_t>(dp[mask], dp[mask ^ (1 << i)] +
                                                       ((a ? sum_smaller_members(i, a - 1, mask ^ (1 << i)) : 0) +
                                                        sum_greater_members(i, a, mask ^ (1 << i))) *
                                                           2 +
                                                       ((a > 1) ? sum_smaller_members(i, a - 2, 1 << i) : 0) +
                                                       ((a + 1 < groups[i].size()) ? sum_greater_members(i, a + 1, 1 << i) : 0));
            }
    }

    cout << setprecision(7) << fixed << (long double)dp.back() / 2.0 << '\n';
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB found '100800.5000000000', expected '100800.5000000000', error '0.0000000000'
2 Correct 1 ms 212 KB found '0.0000000000', expected '0.0000000000', error '-0.0000000000'
3 Correct 1 ms 320 KB found '0.0000000000', expected '0.0000000000', error '-0.0000000000'
4 Correct 0 ms 212 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
5 Correct 0 ms 320 KB found '124002.0000000000', expected '124002.0000000000', error '0.0000000000'
6 Correct 3 ms 1756 KB found '772893586.0000000000', expected '772893586.0000000000', error '0.0000000000'
7 Correct 4 ms 2080 KB found '1100977812.5000000000', expected '1100977812.5000000000', error '0.0000000000'
8 Correct 3 ms 2148 KB found '1249950000.5000000000', expected '1249950000.5000000000', error '0.0000000000'
9 Correct 4 ms 2172 KB found '1249975000.0000000000', expected '1249975000.0000000000', error '0.0000000000'
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
2 Correct 0 ms 212 KB found '1225.0000000000', expected '1225.0000000000', error '0.0000000000'
3 Correct 1 ms 320 KB found '1023.0000000000', expected '1023.0000000000', error '0.0000000000'
4 Correct 1 ms 212 KB found '294.0000000000', expected '294.0000000000', error '0.0000000000'
5 Correct 1 ms 212 KB found '1087.0000000000', expected '1087.0000000000', error '0.0000000000'
6 Correct 1 ms 212 KB found '1.5000000000', expected '1.5000000000', error '0.0000000000'
7 Correct 1 ms 212 KB found '703.0000000000', expected '703.0000000000', error '0.0000000000'
8 Correct 0 ms 212 KB found '55.5000000000', expected '55.5000000000', error '0.0000000000'
9 Correct 1 ms 212 KB found '56.0000000000', expected '56.0000000000', error '0.0000000000'
10 Correct 1 ms 212 KB found '45.0000000000', expected '45.0000000000', error '0.0000000000'
11 Correct 1 ms 212 KB found '66.5000000000', expected '66.5000000000', error '0.0000000000'
12 Correct 1 ms 212 KB found '67.0000000000', expected '67.0000000000', error '0.0000000000'
13 Correct 1 ms 212 KB found '66.0000000000', expected '66.0000000000', error '0.0000000000'
14 Correct 1 ms 212 KB found '47.0000000000', expected '47.0000000000', error '0.0000000000'
15 Correct 1 ms 212 KB found '50.0000000000', expected '50.0000000000', error '0.0000000000'
16 Correct 1 ms 212 KB found '49.0000000000', expected '49.0000000000', error '0.0000000000'
17 Correct 1 ms 316 KB found '57.0000000000', expected '57.0000000000', error '0.0000000000'
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
2 Correct 0 ms 212 KB found '1225.0000000000', expected '1225.0000000000', error '0.0000000000'
3 Correct 1 ms 320 KB found '1023.0000000000', expected '1023.0000000000', error '0.0000000000'
4 Correct 1 ms 212 KB found '294.0000000000', expected '294.0000000000', error '0.0000000000'
5 Correct 1 ms 212 KB found '1087.0000000000', expected '1087.0000000000', error '0.0000000000'
6 Correct 1 ms 212 KB found '1.5000000000', expected '1.5000000000', error '0.0000000000'
7 Correct 1 ms 212 KB found '703.0000000000', expected '703.0000000000', error '0.0000000000'
8 Correct 0 ms 212 KB found '55.5000000000', expected '55.5000000000', error '0.0000000000'
9 Correct 1 ms 212 KB found '56.0000000000', expected '56.0000000000', error '0.0000000000'
10 Correct 1 ms 212 KB found '45.0000000000', expected '45.0000000000', error '0.0000000000'
11 Correct 1 ms 212 KB found '66.5000000000', expected '66.5000000000', error '0.0000000000'
12 Correct 1 ms 212 KB found '67.0000000000', expected '67.0000000000', error '0.0000000000'
13 Correct 1 ms 212 KB found '66.0000000000', expected '66.0000000000', error '0.0000000000'
14 Correct 1 ms 212 KB found '47.0000000000', expected '47.0000000000', error '0.0000000000'
15 Correct 1 ms 212 KB found '50.0000000000', expected '50.0000000000', error '0.0000000000'
16 Correct 1 ms 212 KB found '49.0000000000', expected '49.0000000000', error '0.0000000000'
17 Correct 1 ms 316 KB found '57.0000000000', expected '57.0000000000', error '0.0000000000'
18 Correct 0 ms 212 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
19 Correct 0 ms 212 KB found '1225.0000000000', expected '1225.0000000000', error '0.0000000000'
20 Correct 1 ms 320 KB found '1023.0000000000', expected '1023.0000000000', error '0.0000000000'
21 Correct 1 ms 212 KB found '294.0000000000', expected '294.0000000000', error '0.0000000000'
22 Correct 0 ms 212 KB found '1087.0000000000', expected '1087.0000000000', error '0.0000000000'
23 Correct 1 ms 212 KB found '1.5000000000', expected '1.5000000000', error '0.0000000000'
24 Correct 1 ms 340 KB found '703.0000000000', expected '703.0000000000', error '0.0000000000'
25 Correct 1 ms 212 KB found '55.5000000000', expected '55.5000000000', error '0.0000000000'
26 Correct 0 ms 212 KB found '56.0000000000', expected '56.0000000000', error '0.0000000000'
27 Correct 1 ms 324 KB found '45.0000000000', expected '45.0000000000', error '0.0000000000'
28 Correct 1 ms 256 KB found '66.5000000000', expected '66.5000000000', error '0.0000000000'
29 Correct 1 ms 316 KB found '67.0000000000', expected '67.0000000000', error '0.0000000000'
30 Correct 1 ms 212 KB found '66.0000000000', expected '66.0000000000', error '0.0000000000'
31 Correct 1 ms 212 KB found '47.0000000000', expected '47.0000000000', error '0.0000000000'
32 Correct 1 ms 212 KB found '50.0000000000', expected '50.0000000000', error '0.0000000000'
33 Correct 1 ms 212 KB found '49.0000000000', expected '49.0000000000', error '0.0000000000'
34 Correct 1 ms 212 KB found '57.0000000000', expected '57.0000000000', error '0.0000000000'
35 Correct 2 ms 1236 KB found '12497500.0000000000', expected '12497500.0000000000', error '0.0000000000'
36 Correct 2 ms 1236 KB found '12495000.5000000000', expected '12495000.5000000000', error '0.0000000000'
37 Correct 7 ms 1524 KB found '12223392.0000000000', expected '12223392.0000000000', error '0.0000000000'
38 Correct 6 ms 1492 KB found '2372500.0000000000', expected '2372500.0000000000', error '0.0000000000'
39 Correct 3 ms 1492 KB found '12475017.5000000000', expected '12475017.5000000000', error '0.0000000000'
40 Correct 7 ms 1476 KB found '10655706.0000000000', expected '10655706.0000000000', error '0.0000000000'
41 Correct 7 ms 1492 KB found '11977895.5000000000', expected '11977895.5000000000', error '0.0000000000'
42 Correct 7 ms 1492 KB found '11977865.0000000000', expected '11977865.0000000000', error '0.0000000000'
43 Correct 7 ms 1492 KB found '11977907.5000000000', expected '11977907.5000000000', error '0.0000000000'
44 Correct 7 ms 1492 KB found '11977808.0000000000', expected '11977808.0000000000', error '0.0000000000'
45 Correct 7 ms 1492 KB found '11977791.0000000000', expected '11977791.0000000000', error '0.0000000000'
46 Correct 7 ms 1480 KB found '11977871.5000000000', expected '11977871.5000000000', error '0.0000000000'
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB found '100800.5000000000', expected '100800.5000000000', error '0.0000000000'
2 Correct 1 ms 212 KB found '0.0000000000', expected '0.0000000000', error '-0.0000000000'
3 Correct 1 ms 320 KB found '0.0000000000', expected '0.0000000000', error '-0.0000000000'
4 Correct 0 ms 212 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
5 Correct 0 ms 320 KB found '124002.0000000000', expected '124002.0000000000', error '0.0000000000'
6 Correct 3 ms 1756 KB found '772893586.0000000000', expected '772893586.0000000000', error '0.0000000000'
7 Correct 4 ms 2080 KB found '1100977812.5000000000', expected '1100977812.5000000000', error '0.0000000000'
8 Correct 3 ms 2148 KB found '1249950000.5000000000', expected '1249950000.5000000000', error '0.0000000000'
9 Correct 4 ms 2172 KB found '1249975000.0000000000', expected '1249975000.0000000000', error '0.0000000000'
10 Correct 1 ms 212 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
11 Correct 0 ms 212 KB found '1225.0000000000', expected '1225.0000000000', error '0.0000000000'
12 Correct 1 ms 320 KB found '1023.0000000000', expected '1023.0000000000', error '0.0000000000'
13 Correct 1 ms 212 KB found '294.0000000000', expected '294.0000000000', error '0.0000000000'
14 Correct 1 ms 212 KB found '1087.0000000000', expected '1087.0000000000', error '0.0000000000'
15 Correct 1 ms 212 KB found '1.5000000000', expected '1.5000000000', error '0.0000000000'
16 Correct 1 ms 212 KB found '703.0000000000', expected '703.0000000000', error '0.0000000000'
17 Correct 0 ms 212 KB found '55.5000000000', expected '55.5000000000', error '0.0000000000'
18 Correct 1 ms 212 KB found '56.0000000000', expected '56.0000000000', error '0.0000000000'
19 Correct 1 ms 212 KB found '45.0000000000', expected '45.0000000000', error '0.0000000000'
20 Correct 1 ms 212 KB found '66.5000000000', expected '66.5000000000', error '0.0000000000'
21 Correct 1 ms 212 KB found '67.0000000000', expected '67.0000000000', error '0.0000000000'
22 Correct 1 ms 212 KB found '66.0000000000', expected '66.0000000000', error '0.0000000000'
23 Correct 1 ms 212 KB found '47.0000000000', expected '47.0000000000', error '0.0000000000'
24 Correct 1 ms 212 KB found '50.0000000000', expected '50.0000000000', error '0.0000000000'
25 Correct 1 ms 212 KB found '49.0000000000', expected '49.0000000000', error '0.0000000000'
26 Correct 1 ms 316 KB found '57.0000000000', expected '57.0000000000', error '0.0000000000'
27 Correct 0 ms 212 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
28 Correct 0 ms 212 KB found '1225.0000000000', expected '1225.0000000000', error '0.0000000000'
29 Correct 1 ms 320 KB found '1023.0000000000', expected '1023.0000000000', error '0.0000000000'
30 Correct 1 ms 212 KB found '294.0000000000', expected '294.0000000000', error '0.0000000000'
31 Correct 0 ms 212 KB found '1087.0000000000', expected '1087.0000000000', error '0.0000000000'
32 Correct 1 ms 212 KB found '1.5000000000', expected '1.5000000000', error '0.0000000000'
33 Correct 1 ms 340 KB found '703.0000000000', expected '703.0000000000', error '0.0000000000'
34 Correct 1 ms 212 KB found '55.5000000000', expected '55.5000000000', error '0.0000000000'
35 Correct 0 ms 212 KB found '56.0000000000', expected '56.0000000000', error '0.0000000000'
36 Correct 1 ms 324 KB found '45.0000000000', expected '45.0000000000', error '0.0000000000'
37 Correct 1 ms 256 KB found '66.5000000000', expected '66.5000000000', error '0.0000000000'
38 Correct 1 ms 316 KB found '67.0000000000', expected '67.0000000000', error '0.0000000000'
39 Correct 1 ms 212 KB found '66.0000000000', expected '66.0000000000', error '0.0000000000'
40 Correct 1 ms 212 KB found '47.0000000000', expected '47.0000000000', error '0.0000000000'
41 Correct 1 ms 212 KB found '50.0000000000', expected '50.0000000000', error '0.0000000000'
42 Correct 1 ms 212 KB found '49.0000000000', expected '49.0000000000', error '0.0000000000'
43 Correct 1 ms 212 KB found '57.0000000000', expected '57.0000000000', error '0.0000000000'
44 Correct 2 ms 1236 KB found '12497500.0000000000', expected '12497500.0000000000', error '0.0000000000'
45 Correct 2 ms 1236 KB found '12495000.5000000000', expected '12495000.5000000000', error '0.0000000000'
46 Correct 7 ms 1524 KB found '12223392.0000000000', expected '12223392.0000000000', error '0.0000000000'
47 Correct 6 ms 1492 KB found '2372500.0000000000', expected '2372500.0000000000', error '0.0000000000'
48 Correct 3 ms 1492 KB found '12475017.5000000000', expected '12475017.5000000000', error '0.0000000000'
49 Correct 7 ms 1476 KB found '10655706.0000000000', expected '10655706.0000000000', error '0.0000000000'
50 Correct 7 ms 1492 KB found '11977895.5000000000', expected '11977895.5000000000', error '0.0000000000'
51 Correct 7 ms 1492 KB found '11977865.0000000000', expected '11977865.0000000000', error '0.0000000000'
52 Correct 7 ms 1492 KB found '11977907.5000000000', expected '11977907.5000000000', error '0.0000000000'
53 Correct 7 ms 1492 KB found '11977808.0000000000', expected '11977808.0000000000', error '0.0000000000'
54 Correct 7 ms 1492 KB found '11977791.0000000000', expected '11977791.0000000000', error '0.0000000000'
55 Correct 7 ms 1480 KB found '11977871.5000000000', expected '11977871.5000000000', error '0.0000000000'
56 Correct 38 ms 596 KB found '7.5000000000', expected '7.5000000000', error '0.0000000000'
57 Correct 103 ms 596 KB found '0.0000000000', expected '0.0000000000', error '-0.0000000000'
58 Correct 0 ms 316 KB found '100800.5000000000', expected '100800.5000000000', error '0.0000000000'
59 Correct 1 ms 324 KB found '0.0000000000', expected '0.0000000000', error '-0.0000000000'
60 Correct 0 ms 212 KB found '0.0000000000', expected '0.0000000000', error '-0.0000000000'
61 Correct 1 ms 212 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
62 Correct 1 ms 340 KB found '124002.0000000000', expected '124002.0000000000', error '0.0000000000'
63 Correct 3 ms 1756 KB found '772893586.0000000000', expected '772893586.0000000000', error '0.0000000000'
64 Correct 4 ms 2080 KB found '1100977812.5000000000', expected '1100977812.5000000000', error '0.0000000000'
65 Correct 3 ms 2184 KB found '1249950000.5000000000', expected '1249950000.5000000000', error '0.0000000000'
66 Correct 4 ms 2184 KB found '1249975000.0000000000', expected '1249975000.0000000000', error '0.0000000000'
67 Correct 1 ms 340 KB found '1.0000000000', expected '1.0000000000', error '0.0000000000'
68 Correct 1 ms 212 KB found '1225.0000000000', expected '1225.0000000000', error '0.0000000000'
69 Correct 1 ms 212 KB found '1023.0000000000', expected '1023.0000000000', error '0.0000000000'
70 Correct 1 ms 212 KB found '294.0000000000', expected '294.0000000000', error '0.0000000000'
71 Correct 1 ms 212 KB found '1087.0000000000', expected '1087.0000000000', error '0.0000000000'
72 Correct 1 ms 316 KB found '1.5000000000', expected '1.5000000000', error '0.0000000000'
73 Correct 1 ms 340 KB found '703.0000000000', expected '703.0000000000', error '0.0000000000'
74 Correct 1 ms 320 KB found '55.5000000000', expected '55.5000000000', error '0.0000000000'
75 Correct 1 ms 212 KB found '56.0000000000', expected '56.0000000000', error '0.0000000000'
76 Correct 1 ms 212 KB found '45.0000000000', expected '45.0000000000', error '0.0000000000'
77 Correct 1 ms 212 KB found '66.5000000000', expected '66.5000000000', error '0.0000000000'
78 Correct 1 ms 212 KB found '67.0000000000', expected '67.0000000000', error '0.0000000000'
79 Correct 1 ms 212 KB found '66.0000000000', expected '66.0000000000', error '0.0000000000'
80 Correct 1 ms 320 KB found '47.0000000000', expected '47.0000000000', error '0.0000000000'
81 Correct 1 ms 212 KB found '50.0000000000', expected '50.0000000000', error '0.0000000000'
82 Correct 1 ms 212 KB found '49.0000000000', expected '49.0000000000', error '0.0000000000'
83 Correct 1 ms 212 KB found '57.0000000000', expected '57.0000000000', error '0.0000000000'
84 Correct 3 ms 1236 KB found '12497500.0000000000', expected '12497500.0000000000', error '0.0000000000'
85 Correct 2 ms 1236 KB found '12495000.5000000000', expected '12495000.5000000000', error '0.0000000000'
86 Correct 8 ms 1492 KB found '12223392.0000000000', expected '12223392.0000000000', error '0.0000000000'
87 Correct 9 ms 1492 KB found '2372500.0000000000', expected '2372500.0000000000', error '0.0000000000'
88 Correct 4 ms 1480 KB found '12475017.5000000000', expected '12475017.5000000000', error '0.0000000000'
89 Correct 6 ms 1492 KB found '10655706.0000000000', expected '10655706.0000000000', error '0.0000000000'
90 Correct 9 ms 1492 KB found '11977895.5000000000', expected '11977895.5000000000', error '0.0000000000'
91 Correct 7 ms 1492 KB found '11977865.0000000000', expected '11977865.0000000000', error '0.0000000000'
92 Correct 7 ms 1492 KB found '11977907.5000000000', expected '11977907.5000000000', error '0.0000000000'
93 Correct 7 ms 1488 KB found '11977808.0000000000', expected '11977808.0000000000', error '0.0000000000'
94 Correct 7 ms 1492 KB found '11977791.0000000000', expected '11977791.0000000000', error '0.0000000000'
95 Correct 7 ms 1476 KB found '11977871.5000000000', expected '11977871.5000000000', error '0.0000000000'
96 Correct 384 ms 18984 KB found '1239972790.0000000000', expected '1239972790.0000000000', error '0.0000000000'
97 Correct 48 ms 468 KB found '128.0000000000', expected '128.0000000000', error '0.0000000000'
98 Correct 356 ms 18924 KB found '161053893.0000000000', expected '161053893.0000000000', error '0.0000000000'
99 Correct 99 ms 18784 KB found '1249625032.0000000000', expected '1249625032.0000000000', error '0.0000000000'
100 Correct 62 ms 596 KB found '10.5000000000', expected '10.5000000000', error '0.0000000000'
101 Correct 343 ms 18932 KB found '1095334900.0000000000', expected '1095334900.0000000000', error '0.0000000000'
102 Correct 356 ms 19012 KB found '1249723731.0000000000', expected '1249723731.0000000000', error '0.0000000000'
103 Correct 364 ms 18868 KB found '1239994164.5000000000', expected '1239994164.5000000000', error '0.0000000000'
104 Correct 352 ms 18884 KB found '1239994234.5000000000', expected '1239994234.5000000000', error '0.0000000000'
105 Correct 352 ms 18892 KB found '1239994121.0000000000', expected '1239994121.0000000000', error '0.0000000000'
106 Correct 356 ms 18852 KB found '1239994009.0000000000', expected '1239994009.0000000000', error '0.0000000000'
107 Correct 355 ms 18840 KB found '1239993860.5000000000', expected '1239993860.5000000000', error '0.0000000000'
108 Correct 172 ms 17388 KB found '1237107336.5000000000', expected '1237107336.5000000000', error '0.0000000000'
109 Correct 358 ms 18876 KB found '1239994062.5000000000', expected '1239994062.5000000000', error '0.0000000000'