#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define MOD 105011 #define NMAX 100005 #define INF 0x3f3f3f3f #define pb push_back using namespace std; //FILE *fin = freopen("schi.in", "r", stdin); //FILE *fout = freopen("schi.out", "w", stdout); typedef pair pii; int primul[NMAX]; int main() { int i, x, n, inc, st, dr, mid, nr = 0; bool ok; cin >> n; inc = 1; while (inc <= n) { st = inc; dr = n; while (st <= dr) { mid = (st + dr) >> 1; if (inc != mid) { cout << "1 " << inc << ' ' << mid << '\n'; cout.flush(); cin >> ok; } if (ok) st = mid + 1; else dr = mid - 1; } primul[nr++] = inc; inc = st; } cout << "2 " << nr << ' '; for (i = 0; i < nr; ++i) cout << primul[i] << ' '; return 0; }