#include using namespace std; int N; pair query(int i,int j){ cout << "? " << i+1 << ' ' << j+1 << endl; int p,q; cin >> p >> q; return {p,q}; } void answer(vector v){ cout << '!'; for (int i=0;i calc(int i,int j){ int p=i/N-j/N,q=i%N-j%N; if (p>q) swap(p,q); return {p,q}; } vector> gen(int x){ vector> res; for (int i=N;i> N; int n=N*N-N; vector ans(n,-1); vector> ret; ret.emplace_back(0,0); for (int i=1;i> sorted(ret); sort(sorted.begin(),sorted.end()); for (int i=N;i> pos(N*N); for (int i=1;i