QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#497087#4218. Hidden GraphhazeAC ✓610ms4240kbC++233.3kb2024-07-28 18:54:272024-07-28 18:54:27

Judging History

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

  • [2024-07-28 18:54:27]
  • 评测
  • 测评结果:AC
  • 用时:610ms
  • 内存:4240kb
  • [2024-07-28 18:54:27]
  • 提交

answer

/*

Author: Haze

2024/7/28

*/

#include <bits/stdc++.h>

#define irep(i, l, r) for(int i = (l); i <= (r); ++ i)
#define drep(i, r, l) for(int i = (r); i >= (l); -- i)
#define IOS ios::sync_with_stdio(false), cin.tie(nullptr);
using namespace std;
typedef long long ll;

inline ll readL() {
    ll s = 0;
    bool fl = false;
    char ch = (char) getchar();
    while (!isdigit(ch)) {
        if (ch == '-')fl = true;
        ch = (char) getchar();
    }
    while (isdigit(ch)) {
        s = s * 10 + (ch ^ 48);
        ch = (char) getchar();
    }
    return fl ? -s : s;
}

inline int read() {
    return (int) (readL());
}

const int mod = 1000000000 + 7;
const int itinf = 1000000999;
const ll llinf = 2e18;
const int N = 500099;

array<int, 2> query(vector<int>&node){
    if(node.size() == 1){
        return {-1, -1};
    }
    cout << "? " << node.size();
    for(int x : node){
        cout << " " << x;
    }
    cout << endl;
    array<int, 2>ar{};
    cin >> ar[0] >> ar[1];
    return ar;
}

void solve() {
    int n;
    cin >> n;
    vector<vector<int>>col = {};
    vector<array<int, 2>>edge;

    auto div = [&](int r){

        vector<array<int, 2>>deg(r + 1);
        vector<vector<int>>G(r + 1);
        irep(i, 1, r)deg[i][1] = i;
        for(auto [u, v] : edge){
            deg[u][0] ++, deg[v][0] ++ ;
            G[u].emplace_back(v);
            G[v].emplace_back(u);
        }
        set<array<int, 2>>st;
        irep(i, 1, r)
            st.insert(deg[i]);
        vector<int>incol(r + 1, -1);
        function<void()> dfs = [&](){
            if(st.size() == 0)return;
            auto [Deg, u] = *st.begin();
            st.erase(st.begin());
            for(int v : G[u]){
                if(!st.contains(deg[v]))continue;
                st.erase(deg[v]);
                deg[v][0] --;
                st.insert(deg[v]);
            }
            dfs();
            vector<int>ban(col.size());
            for(int v : G[u]){
                if(incol[v] != -1)
                    ban[incol[v]] = 1;
            }
            for(int i = 0; i < col.size(); ++ i){
                if(ban[i] == 0){
                    incol[u] = i;
                    col[i].push_back(u);
                    break;
                }
            }
            if(incol[u] == -1){
                incol[u] = col.size();
                col.push_back({u});
            }
        };
        dfs();
    };
    irep(u, 1, n){
        col.clear();
        div(u - 1);

        int to = -1;
//        cerr << col.size() << endl;
        for(int c = 0; c < col.size(); ++ c){
            assert(c != col.size());
            auto vec = col[c];
            vec.push_back(u);
            auto [i, j] = query(vec);
            if(i == -1)to = c;

            while(i != -1){
                edge.push_back({i, j});
                vec.erase(find(vec.begin(), vec.end(), i + j - u));
                auto T = query(vec);
                i = T[0], j = T[1];
            }
        }
    }
    cout << "! " << edge.size() << endl;
    for(auto [u, v] : edge){
        cout << u << ' ' << v << endl;
    }
}

int main() {
    // IOS
    int T = 1;
    while (T--) {
        solve();
    }
    return 0;
}

详细

Test #1:

score: 100
Accepted
time: 1ms
memory: 3552kb

input:

3
1 2
2 3
1 3

output:

? 2 1 2
? 2 2 3
? 2 1 3
! 3
1 2
2 3
1 3

result:

ok correct

Test #2:

score: 0
Accepted
time: 1ms
memory: 3620kb

input:

10
1 2
-1 -1
1 3
-1 -1
1 4
4 5
2 5
-1 -1
-1 -1
-1 -1
2 6
-1 -1
-1 -1
3 7
-1 -1
-1 -1
4 8
3 8
-1 -1
-1 -1
3 9
-1 -1
-1 -1
4 10
3 10
-1 -1

output:

? 2 1 2
? 2 2 3
? 2 1 3
? 3 3 2 4
? 2 1 4
? 4 4 3 2 5
? 3 3 2 5
? 2 3 5
? 2 1 5
? 3 5 1 6
? 4 4 2 3 6
? 3 4 3 6
? 4 5 1 6 7
? 4 4 2 3 7
? 3 4 2 7
? 5 5 1 7 6 8
? 4 4 2 3 8
? 3 2 3 8
? 2 2 8
? 6 8 1 5 7 6 9
? 4 4 3 2 9
? 3 4 2 9
? 7 8 1 5 9 7 6 10
? 4 4 3 2 10
? 3 3 2 10
? 2 2 10
! 12
1 2
1 3
1 4
4 5...

result:

ok correct

Test #3:

score: 0
Accepted
time: 0ms
memory: 3616kb

input:

5
2 1
3 2
3 1
-1 -1
4 2
4 1
-1 -1
5 2
5 1

output:

? 2 1 2
? 2 2 3
? 2 1 3
? 2 3 4
? 2 2 4
? 2 1 4
? 3 4 3 5
? 2 2 5
? 2 1 5
! 7
2 1
3 2
3 1
4 2
4 1
5 2
5 1

result:

ok correct

Test #4:

score: 0
Accepted
time: 1ms
memory: 3620kb

input:

3
2 1
-1 -1
1 3

output:

? 2 1 2
? 2 2 3
? 2 1 3
! 2
2 1
1 3

result:

ok correct

Test #5:

score: 0
Accepted
time: 1ms
memory: 3612kb

input:

6
1 2
3 2
3 1
3 4
4 2
-1 -1
4 5
-1 -1
3 5
2 5
-1 -1
-1 -1
3 6
-1 -1

output:

? 2 1 2
? 2 2 3
? 2 1 3
? 2 3 4
? 2 2 4
? 2 1 4
? 3 4 1 5
? 2 1 5
? 2 3 5
? 2 2 5
? 3 5 1 6
? 2 4 6
? 2 3 6
? 2 2 6
! 9
1 2
3 2
3 1
3 4
4 2
4 5
3 5
2 5
3 6

result:

ok correct

Test #6:

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

input:

27
-1 -1
3 1
3 2
-1 -1
-1 -1
3 5
-1 -1
1 5
2 5
-1 -1
-1 -1
6 1
-1 -1
-1 -1
-1 -1
-1 -1
6 8
-1 -1
-1 -1
1 8
-1 -1
-1 -1
-1 -1
1 9
-1 -1
10 8
-1 -1
-1 -1
-1 -1
4 11
5 11
-1 -1
6 11
-1 -1
1 11
-1 -1
12 11
-1 -1
5 12
-1 -1
-1 -1
10 13
-1 -1
8 13
-1 -1
6 13
5 13
14 1
14 12
-1 -1
14 8
-1 -1
14 5
6 14
-1 -...

output:

? 2 1 2
? 3 2 1 3
? 2 2 3
? 2 3 4
? 3 2 1 4
? 3 3 4 5
? 2 4 5
? 3 2 1 5
? 2 2 5
? 3 5 4 6
? 2 3 6
? 3 2 1 6
? 2 2 6
? 4 5 6 4 7
? 2 3 7
? 3 2 1 7
? 5 5 6 7 4 8
? 4 5 7 4 8
? 2 3 8
? 3 2 1 8
? 2 2 8
? 5 8 5 7 4 9
? 3 6 3 9
? 3 1 2 9
? 2 2 9
? 6 8 5 9 7 4 10
? 5 5 9 7 4 10
? 3 6 3 10
? 3 1 2 10
? 6 8 ...

result:

ok correct

Test #7:

score: 0
Accepted
time: 3ms
memory: 3652kb

input:

47
-1 -1
-1 -1
-1 -1
5 4
5 3
-1 -1
-1 -1
-1 -1
7 5
7 6
-1 -1
-1 -1
-1 -1
5 8
-1 -1
9 4
-1 -1
-1 -1
-1 -1
10 7
-1 -1
11 1
-1 -1
7 11
-1 -1
11 12
2 12
5 12
-1 -1
7 12
12 3
-1 -1
-1 -1
13 11
13 5
-1 -1
13 7
-1 -1
-1 -1
-1 -1
-1 -1
4 15
13 15
-1 -1
-1 -1
-1 -1
16 1
-1 -1
-1 -1
-1 -1
17 8
17 1
-1 -1
17 1...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 4 3 2 1 5
? 3 2 1 5
? 4 5 2 1 6
? 3 4 3 6
? 5 5 6 2 1 7
? 4 6 2 1 7
? 3 2 1 7
? 3 4 3 7
? 6 7 4 3 2 1 8
? 3 6 5 8
? 2 6 8
? 7 8 7 4 3 2 1 9
? 6 8 7 3 2 1 9
? 3 5 6 9
? 6 9 5 6 2 1 10
? 5 4 8 7 3 10
? 4 4 8 3 10
? 7 10 5 9 6 2 1 11
? 6 10 5 9 6 2 11
? 5 7...

result:

ok correct

Test #8:

score: 0
Accepted
time: 3ms
memory: 3616kb

input:

38
-1 -1
-1 -1
4 1
-1 -1
3 5
4 5
-1 -1
1 5
-1 -1
4 6
-1 -1
-1 -1
6 7
7 5
2 7
4 7
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
4 10
11 1
-1 -1
-1 -1
11 4
12 8
11 12
-1 -1
-1 -1
12 7
-1 -1
13 8
11 13
-1 -1
13 12
4 13
-1 -1
13 1
-1 -1
3 14
-1 -1
11 14
14 5
6 14
-1 -1
-1 -1
1 14
-1 -1
-1 ...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 3 3 2 4
? 4 4 3 2 5
? 3 4 2 5
? 2 2 5
? 2 1 5
? 3 5 2 6
? 3 4 3 6
? 2 3 6
? 2 1 6
? 4 5 6 2 7
? 3 5 2 7
? 2 2 7
? 3 4 3 7
? 2 3 7
? 2 1 7
? 4 7 1 3 8
? 4 6 5 2 8
? 2 4 8
? 5 7 1 3 8 9
? 4 6 5 2 9
? 2 4 9
? 6 7 1 3 9 8 10
? 4 6 5 2 10
? 2 4 10
? 7 7 1 10 3 9 8 11
? 6 7...

result:

ok correct

Test #9:

score: 0
Accepted
time: 0ms
memory: 3512kb

input:

25
-1 -1
-1 -1
-1 -1
5 4
5 2
-1 -1
-1 -1
6 4
-1 -1
5 7
7 3
-1 -1
-1 -1
4 8
2 8
-1 -1
5 8
-1 -1
9 8
-1 -1
-1 -1
2 9
9 4
10 3
-1 -1
-1 -1
-1 -1
9 11
-1 -1
10 11
-1 -1
2 11
-1 -1
6 12
-1 -1
-1 -1
12 4
-1 -1
5 13
-1 -1
7 13
13 8
6 13
-1 -1
-1 -1
5 14
-1 -1
7 14
-1 -1
14 13
14 3
14 4
-1 -1
-1 -1
-1 -1
10...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 4 3 2 1 5
? 3 3 1 5
? 4 5 3 1 6
? 3 4 2 6
? 2 2 6
? 5 6 5 3 1 7
? 4 6 3 1 7
? 3 6 1 7
? 3 4 2 7
? 5 7 4 2 1 8
? 4 7 2 1 8
? 3 7 1 8
? 4 5 6 3 8
? 3 6 3 8
? 5 8 7 6 1 9
? 4 7 6 1 9
? 3 5 3 9
? 3 4 2 9
? 2 4 9
? 6 9 5 6 3 1 10
? 5 9 5 6 1 10
? 3 8 7 10
? 3...

result:

ok correct

Test #10:

score: 0
Accepted
time: 1ms
memory: 3624kb

input:

6
-1 -1
2 3
-1 -1
-1 -1
-1 -1
-1 -1
2 5
5 6
-1 -1
-1 -1

output:

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

result:

ok correct

Test #11:

score: 0
Accepted
time: 1ms
memory: 3856kb

input:

3
2 1
2 3
3 1

output:

? 2 1 2
? 2 2 3
? 2 1 3
! 3
2 1
2 3
3 1

result:

ok correct

Test #12:

score: 0
Accepted
time: 0ms
memory: 3616kb

input:

3
2 1
-1 -1
3 1

output:

? 2 1 2
? 2 2 3
? 2 1 3
! 2
2 1
3 1

result:

ok correct

Test #13:

score: 0
Accepted
time: 1ms
memory: 3756kb

input:

5
2 1
2 3
3 1
-1 -1
-1 -1
-1 -1
-1 -1
2 5
5 1

output:

? 2 1 2
? 2 2 3
? 2 1 3
? 2 3 4
? 2 2 4
? 2 1 4
? 3 3 4 5
? 2 2 5
? 2 1 5
! 5
2 1
2 3
3 1
2 5
5 1

result:

ok correct

Test #14:

score: 0
Accepted
time: 0ms
memory: 3548kb

input:

3
2 1
-1 -1
-1 -1

output:

? 2 1 2
? 2 2 3
? 2 1 3
! 1
2 1

result:

ok correct

Test #15:

score: 0
Accepted
time: 0ms
memory: 3856kb

input:

5
-1 -1
-1 -1
4 3
-1 -1
2 5
-1 -1
3 5

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 3 2 1 4
? 4 4 2 1 5
? 3 4 1 5
? 2 3 5
! 3
4 3
2 5
3 5

result:

ok correct

Test #16:

score: 0
Accepted
time: 9ms
memory: 3680kb

input:

93
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
10 9
-1 -1
7 11
-1 -1
-1 -1
2 12
-1 -1
-1 -1
5 13
-1 -1
-1 -1
-1 -1
-1 -1
15 12
-1 -1
-1 -1
6 16
8 16
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
19 18
11 19
-1 -1
-1 -1
20 16
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
1 23
8 23
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
1 25
...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 6 5 4 3 2 1 6
? 7 6 5 4 3 2 1 7
? 8 7 6 5 4 3 2 1 8
? 9 8 7 6 5 4 3 2 1 9
? 10 9 8 7 6 5 4 3 2 1 10
? 9 8 7 6 5 4 3 2 1 10
? 10 10 8 7 6 5 4 3 2 1 11
? 9 10 8 6 5 4 3 2 1 11
? 2 9 11
? 10 10 11 8 6 5 4 3 2 1 12
? 9 10 11 8 6 5 4 3 1 12
? 3 9 7 12
? 10 10...

result:

ok correct

Test #17:

score: 0
Accepted
time: 0ms
memory: 3692kb

input:

111
-1 -1
-1 -1
-1 -1
-1 -1
2 6
-1 -1
7 4
-1 -1
-1 -1
3 8
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
2 11
4 11
-1 -1
6 12
7 12
12 11
-1 -1
12 4
-1 -1
13 10
-1 -1
7 13
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
17 10
-1 -1
-1 -1
18 5
-1 -1
-1 -1
4 18
16 19
-1 -1
11 19
-1 -...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 6 5 4 3 2 1 6
? 5 5 4 3 1 6
? 6 6 5 4 3 1 7
? 5 6 5 3 1 7
? 2 2 7
? 6 7 6 5 3 1 8
? 5 7 6 5 1 8
? 3 4 2 8
? 6 7 8 6 5 1 9
? 4 4 3 2 9
? 7 7 8 6 9 5 1 10
? 4 4 3 2 10
? 8 7 8 6 10 9 5 1 11
? 4 4 3 2 11
? 3 4 3 11
? 2 3 11
? 9 11 7 6 8 10 9 5 1 12
? 8 11 7...

result:

ok correct

Test #18:

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

input:

132
-1 -1
3 1
-1 -1
-1 -1
-1 -1
-1 -1
5 1
6 3
-1 -1
-1 -1
7 2
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
10 8
-1 -1
5 10
-1 -1
-1 -1
-1 -1
-1 -1
12 8
-1 -1
9 13
-1 -1
-1 -1
-1 -1
2 14
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
17 15
-1 -1
-1 -1
-1 -1
-1 -1
19 10
17 19
19 6
-1 -1
-1 -1
-1 -1
-1 -1
21 20
-1 -1
-1 -1
22 8...

output:

? 2 1 2
? 3 2 1 3
? 2 2 3
? 3 3 2 4
? 2 1 4
? 4 3 4 2 5
? 2 1 5
? 5 5 3 4 2 6
? 4 5 4 2 6
? 2 1 6
? 5 6 1 4 2 7
? 4 6 1 4 7
? 3 3 5 7
? 5 6 1 7 4 8
? 4 3 5 2 8
? 6 6 1 7 8 4 9
? 4 3 5 2 9
? 7 6 1 7 9 8 4 10
? 6 6 1 7 9 4 10
? 4 3 5 2 10
? 3 3 2 10
? 7 10 1 6 7 9 4 11
? 5 8 5 3 2 11
? 8 10 1 6 7 11 9...

result:

ok correct

Test #19:

score: 0
Accepted
time: 9ms
memory: 3848kb

input:

94
-1 -1
3 2
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
2 7
-1 -1
-1 -1
7 9
-1 -1
2 9
-1 -1
-1 -1
-1 -1
11 6
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
11 13
-1 -1
6 13
-1 -1
-1 -1
14 10
-1 -1
14 11
-1 -1
-1 -1
-1 -1
15 11
-1 -1
-1 -1
15 16
-1 -1
16 7
-1 -1
-1 -1
17 8
-1 -1
17 10
17 11
-1 -1
-1 -1
-1 ...

output:

? 2 1 2
? 3 2 1 3
? 2 1 3
? 3 3 1 4
? 2 2 4
? 4 3 4 1 5
? 2 2 5
? 5 3 5 4 1 6
? 2 2 6
? 6 3 6 5 4 1 7
? 2 2 7
? 7 7 3 6 5 4 1 8
? 2 2 8
? 8 7 3 8 6 5 4 1 9
? 7 3 8 6 5 4 1 9
? 2 2 9
? 8 9 3 8 6 5 4 1 10
? 2 7 10
? 2 2 10
? 9 9 3 10 8 6 5 4 1 11
? 8 9 3 10 8 5 4 1 11
? 2 7 11
? 2 2 11
? 9 9 11 3 10 8...

result:

ok correct

Test #20:

score: 0
Accepted
time: 6ms
memory: 3668kb

input:

73
-1 -1
1 3
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
5 7
6 7
-1 -1
-1 -1
3 8
-1 -1
-1 -1
1 9
9 8
-1 -1
-1 -1
3 10
9 10
4 10
-1 -1
1 10
-1 -1
-1 -1
4 11
-1 -1
-1 -1
12 10
-1 -1
12 9
12 3
-1 -1
-1 -1
-1 -1
13 11
13 6
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
15 8
-1 -1
-1 -1
-1 -1
16 14
1 16
-1 -1
10 16
-1 -1
3...

output:

? 2 1 2
? 3 2 1 3
? 2 2 3
? 3 3 2 4
? 2 1 4
? 4 3 4 2 5
? 2 1 5
? 5 3 5 4 2 6
? 2 1 6
? 6 3 6 5 4 2 7
? 5 3 6 4 2 7
? 4 3 4 2 7
? 2 1 7
? 5 7 3 4 2 8
? 4 7 4 2 8
? 4 6 5 1 8
? 6 7 8 1 4 2 9
? 5 7 8 4 2 9
? 4 7 4 2 9
? 4 6 5 3 9
? 6 9 3 7 4 2 10
? 5 9 7 4 2 10
? 4 7 4 2 10
? 3 7 2 10
? 5 8 1 6 5 10
?...

result:

ok correct

Test #21:

score: 0
Accepted
time: 6ms
memory: 3600kb

input:

77
-1 -1
3 2
-1 -1
-1 -1
2 4
-1 -1
-1 -1
3 6
-1 -1
-1 -1
-1 -1
3 7
-1 -1
-1 -1
3 8
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
1 11
-1 -1
-1 -1
-1 -1
-1 -1
8 13
-1 -1
-1 -1
-1 -1
2 14
14 8
14 7
-1 -1
3 15
-1 -1
15 8
2 15
-1 -1
16 15
-1 -1
16 8
16 1
2 16
-1 -1
-1 -1
-1 -1
7 17
-1 -1
2 17
-1 -1
-1 -1
-1 -1
-1 -1
-1...

output:

? 2 1 2
? 3 2 1 3
? 2 1 3
? 3 3 1 4
? 2 2 4
? 4 4 3 1 5
? 2 2 5
? 5 4 3 5 1 6
? 4 4 5 1 6
? 2 2 6
? 5 6 2 5 1 7
? 3 3 4 7
? 2 4 7
? 6 7 6 2 5 1 8
? 3 3 4 8
? 2 4 8
? 7 8 7 6 2 5 1 9
? 3 3 4 9
? 8 8 7 6 2 9 5 1 10
? 3 3 4 10
? 9 8 7 6 2 10 9 5 1 11
? 8 8 7 6 2 10 9 5 11
? 3 3 4 11
? 9 8 7 6 2 11 10 9...

result:

ok correct

Test #22:

score: 0
Accepted
time: 12ms
memory: 3612kb

input:

81
-1 -1
2 3
-1 -1
-1 -1
2 4
4 5
1 5
-1 -1
-1 -1
-1 -1
4 6
-1 -1
-1 -1
-1 -1
-1 -1
1 8
-1 -1
-1 -1
-1 -1
2 10
10 6
-1 -1
10 4
10 3
-1 -1
-1 -1
-1 -1
11 3
4 11
8 12
-1 -1
-1 -1
2 12
6 12
10 13
-1 -1
-1 -1
-1 -1
10 14
-1 -1
-1 -1
1 14
-1 -1
-1 -1
13 15
-1 -1
-1 -1
12 16
11 16
1 16
-1 -1
13 16
-1 -1
-1...

output:

? 2 1 2
? 3 2 1 3
? 2 1 3
? 3 3 1 4
? 2 2 4
? 4 4 3 1 5
? 3 3 1 5
? 2 3 5
? 2 2 5
? 3 5 2 6
? 4 4 3 1 6
? 3 3 1 6
? 4 6 5 2 7
? 4 4 3 1 7
? 5 6 5 2 7 8
? 4 4 3 1 8
? 3 4 3 8
? 6 8 5 6 2 7 9
? 4 1 4 3 9
? 7 8 5 6 2 9 7 10
? 6 8 5 6 9 7 10
? 5 8 5 9 7 10
? 4 1 4 3 10
? 3 1 3 10
? 2 1 10
? 6 10 5 8 9 7...

result:

ok correct

Test #23:

score: 0
Accepted
time: 9ms
memory: 3544kb

input:

93
-1 -1
-1 -1
4 1
2 4
-1 -1
-1 -1
-1 -1
4 6
-1 -1
-1 -1
2 7
-1 -1
-1 -1
3 8
-1 -1
1 8
-1 -1
9 8
-1 -1
9 1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
13 7
-1 -1
-1 -1
-1 -1
9 14
4 14
-1 -1
-1 -1
1 14
14 15
-1 -1
-1 -1
-1 -1
13 16
-1 -1
-1 -1
-1 -1
17 5
17 8
2 17
-1 -1
17 16
17 3
-1 ...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 3 3 2 4
? 2 3 4
? 3 4 3 5
? 3 2 1 5
? 4 4 5 3 6
? 3 5 3 6
? 3 2 1 6
? 6 6 2 1 5 3 7
? 5 6 1 5 3 7
? 2 4 7
? 5 7 4 5 3 8
? 4 7 4 5 8
? 4 2 6 1 8
? 3 2 6 8
? 5 8 4 7 5 9
? 4 4 7 5 9
? 5 1 2 6 3 9
? 4 2 6 3 9
? 6 9 4 7 3 5 10
? 4 8 2 6 10
? 2 1 10
? 7 9 4 7 3 10 5 11
? 4...

result:

ok correct

Test #24:

score: 0
Accepted
time: 0ms
memory: 3616kb

input:

37
-1 -1
3 1
-1 -1
-1 -1
-1 -1
2 5
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
7 1
2 7
6 8
7 8
4 8
-1 -1
2 8
1 8
9 8
-1 -1
6 9
-1 -1
9 1
2 9
3 10
-1 -1
10 8
1 10
-1 -1
9 11
4 11
7 11
-1 -1
3 11
11 8
11 1
2 11
-1 -1
-1 -1
12 7
-1 -1
12 8
12 1
-1 -1
12 13
6 13
-1 -1
-1 -1
-1 -1
-1 -1
6 14
14 5
-1 -1
14 3
-1 -1
14 8...

output:

? 2 1 2
? 3 2 1 3
? 2 2 3
? 3 3 2 4
? 2 1 4
? 4 3 4 2 5
? 3 3 4 5
? 2 1 5
? 4 5 3 4 6
? 3 2 1 6
? 5 5 3 6 4 7
? 3 2 1 7
? 2 2 7
? 6 7 5 3 6 4 8
? 5 7 5 3 4 8
? 4 5 3 4 8
? 3 5 3 8
? 3 2 1 8
? 2 1 8
? 4 8 5 3 9
? 3 5 3 9
? 4 7 6 4 9
? 3 7 4 9
? 3 2 1 9
? 2 2 9
? 6 9 7 5 4 3 10
? 5 9 7 5 4 10
? 2 8 10...

result:

ok correct

Test #25:

score: 0
Accepted
time: 5ms
memory: 3884kb

input:

144
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
9 15
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
14 18
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
5 22
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 6 5 4 3 2 1 6
? 7 6 5 4 3 2 1 7
? 8 7 6 5 4 3 2 1 8
? 9 8 7 6 5 4 3 2 1 9
? 10 9 8 7 6 5 4 3 2 1 10
? 11 10 9 8 7 6 5 4 3 2 1 11
? 12 11 10 9 8 7 6 5 4 3 2 1 12
? 13 12 11 10 9 8 7 6 5 4 3 2 1 13
? 14 13 12 11 10 9 8 7 6 5 4 3 2 1 14
? 15 14 13 12 11 10 ...

result:

ok correct

Test #26:

score: 0
Accepted
time: 82ms
memory: 4056kb

input:

561
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
26 22
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 6 5 4 3 2 1 6
? 7 6 5 4 3 2 1 7
? 8 7 6 5 4 3 2 1 8
? 9 8 7 6 5 4 3 2 1 9
? 10 9 8 7 6 5 4 3 2 1 10
? 11 10 9 8 7 6 5 4 3 2 1 11
? 12 11 10 9 8 7 6 5 4 3 2 1 12
? 13 12 11 10 9 8 7 6 5 4 3 2 1 13
? 14 13 12 11 10 9 8 7 6 5 4 3 2 1 14
? 15 14 13 12 11 10 ...

result:

ok correct

Test #27:

score: 0
Accepted
time: 109ms
memory: 3856kb

input:

679
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
39 40
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 6 5 4 3 2 1 6
? 7 6 5 4 3 2 1 7
? 8 7 6 5 4 3 2 1 8
? 9 8 7 6 5 4 3 2 1 9
? 10 9 8 7 6 5 4 3 2 1 10
? 11 10 9 8 7 6 5 4 3 2 1 11
? 12 11 10 9 8 7 6 5 4 3 2 1 12
? 13 12 11 10 9 8 7 6 5 4 3 2 1 13
? 14 13 12 11 10 9 8 7 6 5 4 3 2 1 14
? 15 14 13 12 11 10 ...

result:

ok correct

Test #28:

score: 0
Accepted
time: 230ms
memory: 3968kb

input:

1000
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
17 27
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 6 5 4 3 2 1 6
? 7 6 5 4 3 2 1 7
? 8 7 6 5 4 3 2 1 8
? 9 8 7 6 5 4 3 2 1 9
? 10 9 8 7 6 5 4 3 2 1 10
? 11 10 9 8 7 6 5 4 3 2 1 11
? 12 11 10 9 8 7 6 5 4 3 2 1 12
? 13 12 11 10 9 8 7 6 5 4 3 2 1 13
? 14 13 12 11 10 9 8 7 6 5 4 3 2 1 14
? 15 14 13 12 11 10 ...

result:

ok correct

Test #29:

score: 0
Accepted
time: 217ms
memory: 4200kb

input:

1000
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
13 14
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
6 22
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 6 5 4 3 2 1 6
? 7 6 5 4 3 2 1 7
? 8 7 6 5 4 3 2 1 8
? 9 8 7 6 5 4 3 2 1 9
? 10 9 8 7 6 5 4 3 2 1 10
? 11 10 9 8 7 6 5 4 3 2 1 11
? 12 11 10 9 8 7 6 5 4 3 2 1 12
? 13 12 11 10 9 8 7 6 5 4 3 2 1 13
? 14 13 12 11 10 9 8 7 6 5 4 3 2 1 14
? 13 12 11 10 9 8 7 ...

result:

ok correct

Test #30:

score: 0
Accepted
time: 610ms
memory: 4240kb

input:

2000
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
44 15
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-1 -1
-...

output:

? 2 1 2
? 3 2 1 3
? 4 3 2 1 4
? 5 4 3 2 1 5
? 6 5 4 3 2 1 6
? 7 6 5 4 3 2 1 7
? 8 7 6 5 4 3 2 1 8
? 9 8 7 6 5 4 3 2 1 9
? 10 9 8 7 6 5 4 3 2 1 10
? 11 10 9 8 7 6 5 4 3 2 1 11
? 12 11 10 9 8 7 6 5 4 3 2 1 12
? 13 12 11 10 9 8 7 6 5 4 3 2 1 13
? 14 13 12 11 10 9 8 7 6 5 4 3 2 1 14
? 15 14 13 12 11 10 ...

result:

ok correct