/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
static void getPermutations(int index, int[] output, ArrayList<int[]> solutions, int[] boxes)
{
if (index == output.length)
{
int[] temp = new int[output.length];
System.
arraycopy(output,
0, temp,
0, output.
length); solutions.add(temp);
return;
}
for (int b: boxes)
{
output[index] = b;
getPermutations(index + 1, output, solutions, boxes);
}
}
{
ArrayList<int[]> solutions = new ArrayList<>();
int objectCount = 3;
getPermutations(0, new int[objectCount], solutions, new int[]{-1, 0});
for (int[] temp: solutions)
{
for (int i: temp)
}
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKICAgIHN0YXRpYyB2b2lkIGdldFBlcm11dGF0aW9ucyhpbnQgaW5kZXgsIGludFtdIG91dHB1dCwgQXJyYXlMaXN0PGludFtdPiBzb2x1dGlvbnMsIGludFtdIGJveGVzKQogICAgewogICAgICAgaWYgKGluZGV4ID09IG91dHB1dC5sZW5ndGgpCiAgICAgICB7CiAgICAgICAJICBpbnRbXSB0ZW1wID0gbmV3IGludFtvdXRwdXQubGVuZ3RoXTsKICAgICAgIAkgIFN5c3RlbS5hcnJheWNvcHkob3V0cHV0LCAwLCB0ZW1wLCAwLCBvdXRwdXQubGVuZ3RoKTsKICAgICAgICAgIHNvbHV0aW9ucy5hZGQodGVtcCk7CiAgICAgICAgICByZXR1cm47CiAgICAgICB9CiAgICAgICBmb3IgKGludCBiOiBib3hlcykKICAgICAgIHsKICAgICAgICAgIG91dHB1dFtpbmRleF0gPSBiOwogICAgICAgICAgZ2V0UGVybXV0YXRpb25zKGluZGV4ICsgMSwgb3V0cHV0LCBzb2x1dGlvbnMsIGJveGVzKTsKICAgICAgIH0KICAgIH0KCQoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CgkJQXJyYXlMaXN0PGludFtdPiBzb2x1dGlvbnMgPSBuZXcgQXJyYXlMaXN0PD4oKTsKCQlpbnQgb2JqZWN0Q291bnQgPSAzOwoJCWdldFBlcm11dGF0aW9ucygwLCBuZXcgaW50W29iamVjdENvdW50XSwgc29sdXRpb25zLCBuZXcgaW50W117LTEsIDB9KTsKCQlmb3IgKGludFtdIHRlbXA6IHNvbHV0aW9ucykKCQl7CgkJCWZvciAoaW50IGk6IHRlbXApCgkJCSAgICBTeXN0ZW0ub3V0LnByaW50KGkgKyAiICAiKTsKCQkJU3lzdGVtLm91dC5wcmludGxuKCk7CgkJfQoJfQp9