#include <bits/stdc++.h>
#include "code.h"
using namespace std;


vector<pair<int, int>> ZapisiTacke(int N){
    int n = N;
    vector<pair<int, int>> tacke(n + 1);
    for(int i = 0; i < n; i++){
        tacke[i + 1].first = i;
        tacke[i + 1].second = i * i;
    }
    return tacke;
}




bool manjije(int x, int y){
    if(Pitaj(1, x, y) == 1){
        return true;
    }
    else{
        return false;
    }
}

vector<int> Resi(int N, int Q){
    int n = N;
    int q = Q;
    vector<int> resenje(n + 1);
    if(Q == 20000){
        int vr = Pitaj(1, 2, 3);
        if(vr == 1){
            for(int i = 1; i <= n; i++){
                resenje[i] = i;
            }
        }
        else{
            for(int i = 1; i <= n; i++){
                resenje[i] = n - i + 1;
            }
        }
    }
    else if(Q == 25000){
        vector<bool> uzet((n + 1), false);
        uzet[1] = true;
        resenje[1] = true;
        for(int tr = 2; tr <= n; tr++){
            int mini;
            for(int i = 1; i <= n; i++){
                if(!uzet[i]){
                    mini = i;
                    break;
                }
            }
            for(int i = 1; i <= n; i++){
                if((!uzet[i]) && (i != mini)){
                    if(manjije(i, mini)){
                        mini = i;
                    }
                }
            }
            uzet[mini] = true;
            resenje[mini] = tr;
        }
    }
    return resenje;
}