QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#818569#8812. Library 3makrav#100 ✓125ms4148kbC++205.4kb2024-12-17 22:12:022024-12-17 22:12:02

Judging History

你现在查看的是最新测评结果

  • [2024-12-17 22:12:02]
  • 评测
  • 测评结果:100
  • 用时:125ms
  • 内存:4148kb
  • [2024-12-17 22:12:02]
  • 提交

answer

#include "library3.h"
#include <bits/stdc++.h> 
#include <cassert>
#include <vector>

using namespace std;

#define pb push_back
#define sz(x) (int)(x).size()

mt19937 rnd(time(NULL));
template<typename T>
void shuf(vector<T>&x) {
    for (int i = 1; i < x.size(); i++) {
        swap(x[i], x[rnd() % i]);
    }
}

void solve(int N) {
    int n = N;
    vector<int> Q(n);
    for (int i = 0; i < n; i++) Q[i] = i;

    int la, req = 0;
    while (true) {
        shuf(Q);
        la = query(Q);
        req++;
        if (la == 0) {
            answer(Q); return;
        }
        if (la >= n - 2) break;
    }
    vector<vector<int>> loops = {{0}};
    if (la == n - 1) {
        for (int i = 1; i < n; i++) loops.back().pb(i);   
    } else {
        loops.pb({});
        for (int i = 1; i < n; i++) {
            swap(Q[0], Q[i]);
            int na = query(Q);
            if (na == 0) {
                answer(Q);
                return;
            }
            swap(Q[0], Q[i]);
            if (na < la) {
                loops[0].pb(i);
            } else loops[1].pb(i);
        }
    }

    vector<int> Qans(n);
    for (auto lp : loops) {
        if (lp.size() <= 2) {
            if (lp.size() == 2) {
                swap(Q[lp[0]], Q[lp[1]]);
                for (int j = 0; j < 2; j++) Qans[lp[j]] = Q[lp[j]];
                la--;
            } else {
                Qans[lp[0]] = Q[lp[0]];
            }
            continue;
        }
        // for (auto u : lp) cout << u << ' ';
        // cout << '\n';
        auto compare = [&](int v1, int v2) {
            // check if v1 < v2
            int third = Q[v2], second = Q[v1], first = Q[lp[0]];
            Q[lp[0]] = third;
            Q[v1] = first;
            Q[v2] = second;
            int newans = query(Q);
            Q[lp[0]] = first; Q[v1] = second; Q[v2] = third;
            return newans < la;
        };

        auto solve = [&](int l, int r, auto&&self) -> vector<int> {
            if (l == r) return {lp[l]};
            int tm = (l + r) / 2;
            auto rsl = self(l, tm, self), rsr = self(tm + 1, r, self);
            vector<int> neww;
            int indl = 0, indr = 0;
            while (indl < rsl.size() || indr < rsr.size()) {
                if (indl == rsl.size()) {
                    neww.pb(rsr[indr++]);
                } else if (indr == rsr.size()) {
                    neww.pb(rsl[indl++]);
                } else {
                    if (compare(rsl[indl], rsr[indr])) {
                        neww.pb(rsl[indl++]);
                    } else {
                        neww.pb(rsr[indr++]);
                    }
                }
            }
            return neww;
        };
        auto lol = solve(1, sz(lp) - 1, solve);
        vector<int> LOL = {lp[0]};
        for (int u : lol) LOL.pb(u);
        // for (auto u : LOL) cout << u << ' ';
        // cout << '\n';
        for (int i = 0; i < sz(LOL); i++) {
            Qans[LOL[(i + 1) % sz(LOL)]] = Q[LOL[i]];
        }
    }
    answer(Qans);
    return;

    // for (int u : Q) cout << u << ' ';
    // cout << endl;
    while (true) {
        // cout << "iter\n";
        // for (auto u : loops) {
        //     for (int v : u) cout << v << ' ';
        //     cout << endl;
        // }
        int sw = 0;
        bool need = false;
        int curind = -1;
        vector<pair<int, int>> pos(sz(loops));
        for (auto l : loops) {
            curind++;
            if (l.size() >= 2) {
                need = true;
                int ind1 = rnd() % sz(l);
                int ind2 = (ind1 + 1 + rnd() % (sz(l) - 1)) % sz(l);
                swap(Q[l[ind1]], Q[l[ind2]]);
                pos[curind] = {ind1, ind2};
                sw++;
            }
        }
        if (!need) break;

        int curans = la - sw;
        //cout << "check " << curans << ' ' <<query(Q) << endl;
        vector<vector<int>> newloops;
        for (int i = 0; i < sz(loops); i++) {
            if (loops[i].size() == 1) {
                newloops.pb(loops[i]);
                continue;
            }
            for (int j = 0; j < 2; j++) newloops.pb({});
            newloops.back().pb(loops[i][pos[i].first]);
            newloops[sz(newloops) - 2].pb(loops[i][pos[i].second]);
            for (int j = 0; j < loops[i].size(); j++) {
                if (j == pos[i].first || j == pos[i].second) continue;
                // if (j == loops[i].size() - 1 && newloops[sz(newloops) - 2].empty()) {
                //     newloops[sz(newloops) - 2].pb(loops[i][j]);
                //     continue;
                // }
                // if (loops[i].size() == 2) {
                //     newloops[sz(newloops) - 2].pb(loops[i][j]);
                //     continue;
                // }
                swap(Q[loops[i][j]], Q[loops[i][pos[i].first]]);
                int rs = query(Q);
                if (rs == 0) {
                    answer(Q);
                    return;
                }
                if (rs < curans) {
                    newloops.back().pb(loops[i][j]);
                } else {
                    newloops[sz(newloops) - 2].pb(loops[i][j]);
                }
                swap(Q[loops[i][j]], Q[loops[i][pos[i].first]]);
            }
        }
        swap(loops, newloops);
        la = curans;
    }
    answer(Q);
}

詳細信息

Subtask #1:

score: 2
Accepted

Test #1:

score: 2
Accepted
time: 1ms
memory: 3840kb

input:

2
1

output:

? 1 0
! 0 1
-

result:

ok Accepted

Test #2:

score: 2
Accepted
time: 1ms
memory: 3776kb

input:

3
0

output:

? 1 2 0
! 1 2 0
-

result:

ok Accepted

Test #3:

score: 2
Accepted
time: 1ms
memory: 4092kb

input:

4
2
3
3
3
0

output:

? 1 3 0 2
? 3 1 0 2
? 0 3 1 2
? 2 3 0 1
? 1 2 3 0
! 1 2 3 0
-

result:

ok Accepted

Test #4:

score: 2
Accepted
time: 0ms
memory: 3852kb

input:

5
4
4
4
4
4

output:

? 4 3 0 2 1
? 0 4 3 2 1
? 1 3 0 4 2
? 1 3 4 2 0
? 2 3 4 0 1
! 3 0 2 1 4
-

result:

ok Accepted

Test #5:

score: 2
Accepted
time: 0ms
memory: 3780kb

input:

5
3
2
4
4
2
3

output:

? 4 3 0 2 1
? 3 4 0 2 1
? 0 3 4 2 1
? 2 3 0 4 1
? 1 3 0 2 4
? 1 4 0 2 3
! 3 1 2 0 4
-

result:

ok Accepted

Test #6:

score: 2
Accepted
time: 0ms
memory: 3840kb

input:

6
3
2
5
3
5
3
3
3
5
5

output:

? 4 3 0 2 5 1
? 1 4 5 3 2 0
? 2 0 1 4 3 5
? 1 2 0 4 3 5
? 4 2 1 0 3 5
? 5 0 1 4 2 3
? 3 0 1 2 4 5
? 3 2 1 4 0 5
? 3 0 2 4 1 5
? 5 0 2 4 3 1
! 1 4 5 2 0 3
-

result:

ok Accepted

Test #7:

score: 2
Accepted
time: 0ms
memory: 3836kb

input:

6
2
3
4
3
3
3
3
5
2
2
4
2
2

output:

? 4 3 0 2 5 1
? 1 4 5 3 2 0
? 2 0 1 4 3 5
? 0 2 1 4 3 5
? 1 0 2 4 3 5
? 4 0 1 2 3 5
? 3 0 1 4 2 5
? 5 0 1 4 3 2
? 1 2 0 4 3 5
? 3 0 1 2 4 5
? 4 2 1 0 3 5
? 3 2 1 4 0 5
? 3 0 2 4 1 5
! 3 4 0 2 1 5
-

result:

ok Accepted

Test #8:

score: 2
Accepted
time: 1ms
memory: 3848kb

input:

6
4
5
5
5
5
5
4
2
2
4
2

output:

? 4 3 0 2 5 1
? 3 4 0 2 5 1
? 0 3 4 2 5 1
? 2 3 0 4 5 1
? 5 3 0 2 4 1
? 1 3 0 2 5 4
? 4 2 3 0 5 1
? 4 1 0 2 3 5
? 4 5 0 3 2 1
? 4 5 3 2 0 1
? 4 1 3 2 5 0
! 4 1 5 3 2 0
-

result:

ok Accepted

Test #9:

score: 2
Accepted
time: 1ms
memory: 4120kb

input:

5
2
4
2
4
4
2
4

output:

? 4 3 0 2 1
? 2 1 4 3 0
? 4 2 1 3 0
? 0 1 4 2 3
? 0 2 4 3 1
? 3 2 4 1 0
? 3 1 2 4 0
! 4 0 3 1 2
-

result:

ok Accepted

Test #10:

score: 2
Accepted
time: 0ms
memory: 4132kb

input:

6
2
3
4
3
3
5
3
5
2
4

output:

? 4 3 0 2 5 1
? 1 4 5 3 2 0
? 2 0 1 4 3 5
? 0 2 1 4 3 5
? 1 0 2 4 3 5
? 4 0 1 2 3 5
? 3 0 1 4 2 5
? 5 0 1 4 3 2
? 1 2 0 4 3 5
? 3 2 1 4 0 5
! 1 3 0 5 2 4
-

result:

ok Accepted

Subtask #2:

score: 19
Accepted

Dependency #1:

100%
Accepted

Test #11:

score: 19
Accepted
time: 0ms
memory: 4120kb

input:

7
5
4
4
6
4
4
4
5
3
3
3
3
3
5
3

output:

? 4 3 0 6 5 1 2
? 3 4 0 6 5 1 2
? 0 3 4 6 5 1 2
? 6 3 0 4 5 1 2
? 5 3 0 6 4 1 2
? 1 3 0 6 5 4 2
? 2 3 0 6 5 1 4
? 0 4 3 6 5 1 2
? 5 3 4 6 0 1 2
? 5 4 0 6 3 1 2
? 2 3 0 6 5 4 1
? 1 3 4 6 5 0 2
? 1 4 0 6 5 3 2
? 1 3 0 6 4 5 2
? 2 3 0 6 4 1 5
! 2 0 4 6 1 3 5
-

result:

ok Accepted

Test #12:

score: 19
Accepted
time: 2ms
memory: 3852kb

input:

50
46
43
46
45
44
47
46
45
48
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
49
47
47
49
47
47
47
49
47
47
47
47
49
47
47
49
47
47
47
47
47
48
46
46
46
46
48
48
48
46
46
48
46
48
46
46
46
48
46
48
46
48
46
48
46
46
48
46
46
48
46
48
46
48
46
46
48
48
46
46
46
48
...

output:

? 19 43 14 28 34 45 17 23 24 49 46 15 39 5 40 31 26 9 47 4 29 11 0 25 48 20 30 10 6 22 35 12 44 7 13 37 42 3 33 27 41 38 1 8 21 32 36 16 18 2
? 25 14 27 39 5 4 15 37 40 48 47 46 44 1 22 3 0 24 30 19 9 49 7 12 35 21 28 41 29 13 31 2 43 38 42 26 45 6 32 23 33 36 20 34 11 17 18 10 8 16
? 1 11 41 40 19 ...

result:

ok Accepted

Test #13:

score: 19
Accepted
time: 6ms
memory: 3856kb

input:

98
94
93
96
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
97
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
97
95
95
95
95
95
95
97
95
95
95
95
95
95
95
95
95
95
95
95
95
97
95
95
95
95
97
95
95
95
95
95
...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 12 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 9 8 5 67 73 91 54 82 31 70 65 36 79
? 6 79 25 47 4...

result:

ok Accepted

Test #14:

score: 19
Accepted
time: 6ms
memory: 3836kb

input:

98
94
95
94
93
90
93
90
91
92
93
94
95
96
95
95
95
95
95
95
95
95
95
95
95
95
97
95
95
95
95
95
95
95
95
95
95
95
95
95
95
97
95
95
97
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
97
97
95
95
97
95
95
95
95
95
95
97
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
97
95
...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 12 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 9 8 5 67 73 91 54 82 31 70 65 36 79
? 6 79 25 47 4...

result:

ok Accepted

Test #15:

score: 19
Accepted
time: 6ms
memory: 3860kb

input:

99
94
92
96
94
94
96
96
92
94
92
94
92
96
94
94
90
96
92
92
96
94
94
98
96
96
98
98
98
96
96
96
96
96
96
96
98
98
96
96
98
98
96
96
98
96
98
98
96
98
96
96
98
98
96
98
96
96
98
96
96
98
96
98
98
96
96
98
96
96
98
96
96
96
98
98
96
98
98
96
96
98
96
98
98
98
96
98
98
98
96
98
98
96
98
98
98
98
96
96
...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 9 8 5 67 73 91 54 82 31 70 65 36 79 12
? 61 62 31 ...

result:

ok Accepted

Test #16:

score: 19
Accepted
time: 6ms
memory: 3840kb

input:

99
96
96
94
94
94
90
94
92
96
90
92
90
94
92
94
96
92
96
94
94
96
98
96
96
98
96
96
98
96
98
96
98
98
96
96
96
96
96
98
96
96
98
98
98
96
98
96
98
98
98
98
98
96
96
96
98
96
96
98
98
96
98
98
96
98
96
96
96
98
96
96
96
96
98
98
98
98
98
98
98
96
96
98
98
98
98
98
98
96
96
98
98
96
96
98
96
96
98
96
...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 9 8 5 67 73 91 54 82 31 70 65 36 79 12
? 61 62 31 ...

result:

ok Accepted

Test #17:

score: 19
Accepted
time: 5ms
memory: 3848kb

input:

99
94
96
94
92
96
92
94
92
94
94
94
90
96
92
92
92
94
94
94
92
94
94
92
92
94
90
94
92
90
94
92
96
94
96
94
94
96
94
90
92
94
92
92
96
88
92
90
90
92
98
96
96
96
98
98
96
98
96
98
96
98
96
98
98
96
98
96
96
96
98
98
96
98
98
96
98
96
96
96
96
98
98
98
98
98
98
96
98
96
96
98
96
98
96
96
98
96
96
96
...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 9 8 5 67 73 91 54 82 31 70 65 36 79 12
? 61 62 31 ...

result:

ok Accepted

Test #18:

score: 19
Accepted
time: 6ms
memory: 3900kb

input:

100
97
96
95
92
89
96
93
92
95
98
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
99
97
97
97
97
97
97
97
97
97
97
97
97
99
97
97
99
97
97
97
97
97
99
97
97
97
97
97
97
97
97
97
97
97
97
97
97
99
97
97
97
97
97
97
97
99
97
97
97
99
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
99
97
97
97
97
97...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 99 8 5 67 73 91 54 82 31 70 65 36 79 12 9
? 39 57 ...

result:

ok Accepted

Test #19:

score: 19
Accepted
time: 6ms
memory: 3852kb

input:

100
97
96
99
99
97
97
99
97
97
97
97
97
99
97
99
99
99
97
97
97
97
97
99
99
97
97
99
97
97
97
99
97
97
99
97
99
99
99
99
97
97
97
99
97
99
99
97
99
97
97
97
99
99
97
97
97
97
99
97
97
99
99
97
97
97
97
99
99
99
97
97
97
97
99
99
99
99
97
99
97
97
97
97
99
97
99
99
97
99
97
99
99
97
97
99
97
99
97
99...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 99 8 5 67 73 91 54 82 31 70 65 36 79 12 9
? 39 57 ...

result:

ok Accepted

Test #20:

score: 19
Accepted
time: 7ms
memory: 3912kb

input:

100
96
97
96
97
96
95
94
89
92
93
94
93
94
95
94
93
94
97
96
95
94
95
94
95
96
95
90
95
92
95
96
97
96
97
92
95
96
95
94
97
98
99
99
99
99
99
99
99
99
99
99
99
99
99
99
97
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 99 8 5 67 73 91 54 82 31 70 65 36 79 12 9
? 39 57 ...

result:

ok Accepted

Test #21:

score: 19
Accepted
time: 6ms
memory: 3784kb

input:

100
98
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
99
97
97
97
97
97
99
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
99
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 99 8 5 67 73 91 54 82 31 70 65 36 79 12 9
? 76 19 ...

result:

ok Accepted

Test #22:

score: 19
Accepted
time: 4ms
memory: 3852kb

input:

99
94
94
94
92
94
94
94
94
92
92
92
94
92
94
94
96
94
92
96
96
96
90
98
98
96
96
96
96
98
98
98
96
96
96
96
98
98
98
96
96
96
98
96
98
98
98
96
98
98
96
96
98
96
96
98
96
98
96
98
98
98
96
98
96
98
98
96
96
96
96
98
98
96
98
98
96
98
98
98
98
98
96
96
96
98
96
98
96
96
98
96
98
96
96
98
96
98
98
98
...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 9 8 5 67 73 91 54 82 31 70 65 36 79 12
? 61 62 31 ...

result:

ok Accepted

Test #23:

score: 19
Accepted
time: 4ms
memory: 3920kb

input:

100
96
95
96
95
96
95
92
93
96
93
92
95
94
93
96
97
96
95
98
97
97
97
99
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
99
97
97
97
99
97
97
99
99
97
97
97
97
97
97
97
97
99
97
99
97
97
97
97
97
97
97
97
97
99
99
97
97
97
97
97
97
99
97
97
99
97
97
97
97
97
97
97
97
97
97
97
99
97
97
97
97
97
97
97...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 99 8 5 67 73 91 54 82 31 70 65 36 79 12 9
? 39 57 ...

result:

ok Accepted

Test #24:

score: 19
Accepted
time: 1ms
memory: 4132kb

input:

100
96
97
92
95
94
93
94
93
94
91
96
91
96
91
92
91
90
95
96
93
92
97
96
93
94
95
92
93
94
95
94
93
94
97
94
93
96
97
94
97
94
95
92
93
94
95
94
95
92
97
94
93
96
91
94
93
96
95
96
95
94
97
96
93
98
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
99
97
97
97
97
97
97
97
97
97...

output:

? 19 76 14 28 34 45 17 68 24 49 46 15 39 61 40 93 26 81 47 72 53 11 63 25 48 66 30 92 6 22 69 98 90 7 13 37 42 3 33 27 41 75 1 86 97 89 95 16 18 84 35 60 23 29 44 43 85 77 56 32 57 74 78 64 0 71 20 96 52 50 38 88 4 59 87 94 55 58 21 83 51 80 10 62 2 99 8 5 67 73 91 54 82 31 70 65 36 79 12 9
? 39 57 ...

result:

ok Accepted

Subtask #3:

score: 79
Accepted

Dependency #2:

100%
Accepted

Test #25:

score: 79
Accepted
time: 90ms
memory: 3844kb

input:

498
492
491
492
491
492
491
488
493
492
493
490
493
492
489
492
491
494
489
494
487
490
493
490
487
488
493
494
493
494
491
490
491
492
491
490
487
488
493
492
487
494
491
494
491
488
493
492
491
492
491
494
493
490
487
488
493
494
487
494
495
492
489
490
491
490
491
494
487
490
491
492
491
490
491
...

output:

? 103 194 297 244 191 102 146 343 457 292 122 239 39 116 390 281 178 81 366 209 53 11 110 405 48 139 152 92 124 200 165 98 153 423 243 37 402 307 171 27 155 263 226 430 208 282 408 154 132 84 479 316 326 432 136 397 245 287 190 120 389 416 388 460 342 467 20 96 52 317 315 311 247 414 439 252 353 123...

result:

ok Accepted

Test #26:

score: 79
Accepted
time: 102ms
memory: 3888kb

input:

498
491
490
491
492
495
494
493
490
489
490
483
494
493
494
493
486
493
492
495
488
491
488
491
488
489
492
493
486
493
490
489
492
491
492
493
492
491
490
491
488
493
490
489
492
489
494
491
490
493
492
487
494
489
492
489
490
495
496
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
...

output:

? 197 256 292 488 393 279 249 109 50 494 248 459 181 443 305 260 268 397 447 54 464 460 69 250 132 94 440 391 435 428 394 334 490 471 72 237 347 350 442 126 209 193 475 130 103 336 450 75 436 134 40 22 106 59 322 115 378 200 102 338 147 128 368 66 365 302 446 114 315 6 78 64 11 402 15 364 160 293 25...

result:

ok Accepted

Test #27:

score: 79
Accepted
time: 106ms
memory: 4136kb

input:

498
489
488
493
488
491
488
493
492
491
490
491
494
491
492
493
486
491
490
491
492
491
490
491
494
493
490
491
488
491
492
493
494
491
492
493
494
495
488
493
494
487
492
493
492
491
496
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
495
...

output:

? 239 347 229 400 288 396 138 64 417 379 139 462 166 65 457 330 71 248 315 23 435 173 403 389 302 495 133 97 414 153 418 308 340 419 72 317 59 202 415 10 195 479 18 183 275 438 161 259 440 320 103 346 384 131 7 343 331 432 232 334 234 269 377 465 77 112 480 198 217 404 34 472 205 467 251 82 164 291 ...

result:

ok Accepted

Test #28:

score: 79
Accepted
time: 94ms
memory: 4144kb

input:

499
493
493
497
496
496
498
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
498
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
498
496
496
...

output:

? 313 143 185 412 164 209 13 419 25 308 479 375 438 345 457 303 59 224 72 396 320 198 150 147 362 183 352 454 343 365 173 436 428 71 498 491 151 475 427 165 261 62 215 423 169 287 142 300 38 324 230 238 367 87 159 480 482 256 20 275 4 223 43 188 168 219 312 442 141 328 322 336 82 305 133 490 298 171...

result:

ok Accepted

Test #29:

score: 79
Accepted
time: 93ms
memory: 4148kb

input:

499
495
495
493
495
491
493
491
495
495
491
491
491
493
493
491
491
493
495
489
493
495
497
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
...

output:

? 372 246 165 371 61 84 107 355 475 331 455 312 80 361 188 154 426 136 86 452 162 195 268 422 290 47 380 412 330 59 291 342 263 17 88 401 407 238 431 24 12 480 274 351 484 215 230 224 354 209 449 369 469 338 9 418 205 161 146 197 217 111 421 257 22 356 329 272 471 463 98 125 254 41 271 103 261 479 2...

result:

ok Accepted

Test #30:

score: 79
Accepted
time: 118ms
memory: 3852kb

input:

499
491
493
489
487
491
491
495
489
491
493
495
493
495
495
491
491
493
493
491
493
491
495
491
495
495
495
495
489
495
489
491
491
493
487
493
487
495
489
489
491
493
491
491
489
489
493
493
493
489
493
489
489
487
497
496
496
496
496
496
496
496
496
498
496
496
496
496
496
496
496
496
496
496
496
...

output:

? 182 263 272 293 112 205 388 285 259 165 213 268 453 386 384 439 238 117 485 400 407 174 209 299 242 176 422 206 162 448 246 226 488 431 260 358 460 45 29 78 289 426 47 461 108 364 463 374 340 198 222 444 341 287 171 325 300 175 109 80 339 119 282 98 138 126 401 288 379 477 76 466 53 239 331 113 10...

result:

ok Accepted

Test #31:

score: 79
Accepted
time: 93ms
memory: 3852kb

input:

499
487
493
497
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
496
...

output:

? 443 442 388 99 259 432 86 142 489 223 305 333 308 341 417 365 375 23 1 28 243 384 361 389 466 11 390 304 147 418 225 494 439 338 367 119 493 313 314 117 355 459 30 267 431 399 105 279 264 13 283 215 0 381 246 474 412 337 226 460 54 349 72 471 66 326 346 202 178 19 238 272 14 481 485 34 451 63 416 ...

result:

ok Accepted

Test #32:

score: 79
Accepted
time: 119ms
memory: 4144kb

input:

500
493
494
495
494
495
494
493
492
491
494
489
494
497
492
497
492
495
494
497
490
491
488
495
492
495
490
493
496
491
492
491
496
495
496
495
494
489
498
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
...

output:

? 469 183 93 240 62 94 304 174 149 31 161 355 397 65 467 335 307 264 325 131 316 450 279 487 366 271 481 352 480 239 405 295 141 177 118 410 156 61 140 420 165 143 25 81 387 194 26 384 389 376 499 440 256 380 97 30 216 142 221 395 308 125 191 336 458 424 67 286 58 169 106 297 403 231 328 224 226 497...

result:

ok Accepted

Test #33:

score: 79
Accepted
time: 125ms
memory: 3928kb

input:

500
493
494
491
494
493
490
495
496
493
494
493
494
495
494
495
492
493
490
495
492
487
492
493
494
493
492
485
494
491
492
493
494
489
490
491
494
497
490
495
492
493
490
493
494
495
490
489
498
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
...

output:

? 169 258 432 85 107 350 412 443 168 226 375 200 313 15 285 84 131 389 343 445 100 373 366 18 290 35 175 490 224 308 124 304 26 51 365 24 27 441 329 126 22 106 407 462 239 142 238 134 235 355 0 279 409 57 199 102 232 114 9 487 103 484 12 479 244 362 39 372 260 318 46 390 179 233 186 369 342 79 259 2...

result:

ok Accepted

Test #34:

score: 79
Accepted
time: 98ms
memory: 3864kb

input:

500
490
495
492
493
492
495
494
491
494
489
496
491
490
491
494
497
494
491
492
495
494
493
494
495
494
495
496
491
492
493
494
493
494
491
490
495
494
495
492
493
492
491
496
491
492
495
496
491
488
491
494
495
494
493
494
495
498
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
...

output:

? 162 175 11 363 53 425 15 57 107 202 386 163 83 52 401 380 19 81 432 358 200 389 351 38 417 373 295 178 206 367 244 400 141 302 134 453 233 193 304 354 65 468 56 73 456 293 63 88 238 169 135 431 445 28 111 428 361 356 236 115 499 353 318 3 312 316 343 27 419 407 165 132 320 491 362 54 416 477 459 1...

result:

ok Accepted

Test #35:

score: 79
Accepted
time: 105ms
memory: 3856kb

input:

500
494
493
494
493
496
497
494
497
494
493
494
497
494
491
492
493
490
493
494
495
498
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
499
497
497
497
497
497
497
497
497
499
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
...

output:

? 155 303 31 461 274 106 273 329 55 204 74 352 57 217 159 87 22 88 442 475 84 165 385 154 343 148 420 296 383 333 32 390 227 15 304 26 264 45 60 146 332 30 372 440 438 267 495 128 192 89 295 5 153 102 347 256 39 43 378 127 12 232 66 203 427 457 130 356 340 149 76 489 171 129 141 417 444 263 123 78 2...

result:

ok Accepted

Test #36:

score: 79
Accepted
time: 100ms
memory: 4116kb

input:

500
493
494
495
498
497
497
497
497
497
497
497
497
499
497
497
497
497
497
499
497
497
497
497
497
499
497
497
497
497
499
497
497
499
497
497
499
499
497
499
497
497
497
497
497
497
497
497
497
497
499
499
497
497
497
497
497
499
497
497
497
497
497
497
499
499
497
499
497
497
497
497
497
497
497
...

output:

? 104 472 428 35 289 320 286 315 93 411 404 220 82 150 277 339 497 275 442 256 304 50 358 410 494 324 391 98 219 5 157 11 137 211 244 111 371 237 52 180 480 479 159 73 373 489 245 132 336 123 297 165 458 307 331 417 103 195 490 474 481 20 34 312 129 406 432 462 400 467 117 17 161 387 45 100 88 381 1...

result:

ok Accepted

Test #37:

score: 79
Accepted
time: 101ms
memory: 3844kb

input:

500
496
493
496
493
492
495
494
491
490
497
494
493
490
491
492
497
492
493
494
491
496
495
496
493
492
491
492
495
494
495
492
491
496
495
492
491
488
491
494
495
492
493
494
489
492
489
488
491
494
493
494
495
494
491
496
493
488
491
498
497
497
499
497
497
497
497
497
497
497
497
497
497
497
497
...

output:

? 260 99 230 302 199 153 331 139 115 223 481 187 324 118 106 442 239 268 453 347 491 229 53 269 15 456 179 195 177 360 477 440 455 13 263 273 264 119 89 163 173 291 182 464 424 484 109 61 421 147 220 30 443 141 74 466 375 357 214 279 248 26 97 389 94 363 129 4 304 121 127 70 280 413 399 392 343 40 3...

result:

ok Accepted

Test #38:

score: 79
Accepted
time: 120ms
memory: 3900kb

input:

499
492
494
492
490
494
494
496
490
494
490
490
494
490
494
492
494
492
490
492
494
488
490
494
490
490
494
492
492
490
492
496
492
486
490
488
494
494
494
488
494
490
492
494
490
488
490
492
492
494
490
494
494
494
494
496
494
492
492
494
490
494
492
492
490
494
494
492
492
492
492
494
496
494
494
...

output:

? 430 496 354 415 360 235 454 427 373 150 172 78 197 129 444 144 219 48 376 64 388 184 268 316 391 85 350 25 270 19 147 265 357 271 366 439 73 118 464 67 347 417 262 492 313 322 243 481 378 176 246 455 325 5 244 45 284 358 38 372 386 451 337 410 370 392 418 293 469 154 365 326 27 407 157 335 49 182 ...

result:

ok Accepted

Test #39:

score: 79
Accepted
time: 110ms
memory: 3928kb

input:

500
494
493
490
491
494
495
496
495
494
497
496
493
494
493
490
495
490
491
496
495
494
493
496
495
490
491
494
493
496
493
496
495
492
493
492
491
490
493
496
495
496
497
492
497
494
491
494
489
492
493
494
491
498
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
...

output:

? 113 167 314 476 428 154 460 275 290 348 153 491 104 369 181 395 361 263 186 242 111 456 423 366 143 328 137 16 293 100 373 277 429 443 492 246 322 276 435 221 4 343 64 368 437 405 319 399 333 165 272 198 15 97 318 226 351 352 436 239 146 335 32 264 68 426 281 89 325 125 344 448 363 161 205 170 494...

result:

ok Accepted

Test #40:

score: 79
Accepted
time: 115ms
memory: 3852kb

input:

500
498
497
499
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
499
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
497
499
497
497
499
497
497
497
497
497
497
497
497
...

output:

? 149 250 81 414 70 45 76 448 54 437 291 194 151 444 487 486 400 348 174 387 300 228 268 145 377 430 64 402 222 425 478 86 61 253 84 257 114 406 50 46 362 1 156 457 165 129 147 187 215 391 196 359 276 480 124 370 148 24 205 389 411 223 206 49 19 384 102 282 137 292 497 381 140 407 73 395 183 420 6 1...

result:

ok Accepted

Extra Test:

score: 0
Extra Test Passed