#include "bits/stdc++.h" #define _CRT_SECURE_NO_WARNINGS #define rep(i,n) for(int i = 0;i < n;i++) #define REP(i,n,k) for(int i = n;i < k;i++) #define P(p) cout << (p) << endl; #define sP(p) cout << setprecision(15) << fixed << p << endl; #define vi vector #define mp(a,b) make_pair(a,b) using namespace std;typedef long long ll;typedef unsigned long long ull;int dx[] = { 1, -1 , 0 , 0};int dy[] = { 0, 0, 1, -1}; void solve() { int a,x,y,first,last; vi v,no; cout << 0 << " " << 1 << " " << 2 << " " << 3 << endl; cin >> x >> y; first = x + y; if(x + y != 4){ REP(i,4,10){ cout << 0 << " " << 1 << " " << 2 << " " << i << endl; cin >> x >> y; if(x + y >= first)v.push_back(i); else{ no.push_back(i); if(no.size() == 2)break; } } } if(v.size() != 4){ rep(i,4){ rep(j,v.size()){ cout << v[j] << " "; } rep(j,3-v.size()){ cout << no[j] << " "; } cout << i << endl; cin >> x >> y; if(x + y > v.size())v.push_back(i); } } do{ printf("%d %d %d %d\n",v[0],v[1],v[2],v[3]); cin >> x >> y; if(x == 4)return; }while(next_permutation(v.begin(),v.end())); } int main() { solve(); return 0; }