static const int A[] = {0, 1, -1}; static const int C[][3] = {{1, 1, -2}, {1, 1, -2}, {-2, 1, 1}}; int mastur(const int i, const int x, const int y) { return i + A[x] * C[x][i / y % 3] * y; }