#include using namespace std; int f(vector> &dice){ int res=0; for(int i=0;i<6;i++){ vector mind(6,1e9); vector sumd(6,0); for(int j=0;j<6;j++){ int tg=i*6+j; vector bk(6,0); for(int k=0;k<6;k++){ bk[dice[tg][k]]++; } for(int k=0;k<6;k++){ mind[k]=min(mind[k],bk[k]); sumd[k]+=bk[k]; } } for(int j=0;j<6;j++){ if(mind[j]>0){ res+=(sumd[j]-3); } } } for(int i=0;i<6;i++){ vector mind(6,1e9); vector sumd(6,0); for(int j=0;j<6;j++){ int tg=j*6+i; vector bk(6,0); for(int k=0;k<6;k++){ bk[dice[tg][k]]++; } for(int k=0;k<6;k++){ mind[k]=min(mind[k],bk[k]); sumd[k]+=bk[k]; } } for(int j=0;j<6;j++){ if(mind[j]>0){ res+=(sumd[j]-3); } } } return res; } vector roll(){ vector res(6); for(auto &nx : res){ cin >> nx; nx--; } return res; } void put(int x,int y){ cout << x+1 << " " << y+1 << "\n"; fflush(stdout); } int main(){ vector> dice(36); for(int i=0;i<35;i++){ dice[i]=roll(); put(i/6,i%6); } int sc=0; dice[35].resize(6); for(int i=0;i<46656;i++){ int v=i; for(int j=0;j<6;j++){ dice[35][j]=v%6; v/=6; } sc+=f(dice); } cerr << sc << "\n"; return 0; }