#include using namespace std; typedef long long ll; int main() { int poss[10][10][10][10]{}; for (int i=0;i<10;i++) for (int j=0;j<10;j++) if (i!=j) for (int k=0;k<10;k++) if (i!=k&&j!=k) for (int l=0;l<10;l++) if (i!=l&&j!=l&&k!=l) poss[i][j][k][l]=1; while (true) { int a[4]; for (int i=0;i<10;i++) for (int j=0;i<10;j++) for (int k=0;k<10;k++) for (int l=0;l<10;l++) if (poss[i][j][k][l]) { a[0]=i,a[1]=j,a[2]=k,a[3]=l; goto aaa; } aaa:; cout<>x>>y; if (x==4) break; int used[10]{}; used[a[0]]=used[a[1]]=used[a[2]]=used[a[3]]=1; for (int i=0;i<10;i++) for (int j=0;i<10;j++) for (int k=0;k<10;k++) for (int l=0;l<10;l++) if (poss[i][j][k][l]) { int s=0,t=0; s+=i==a[0]; s+=j==a[1]; s+=k==a[2]; s+=l==a[3]; t=used[i]+used[j]+used[k]+used[l]-s; if (s!=x||t!=y) poss[i][j][k][l]=0; } } return 0; }