Das muss ich jetzt mal sacken lassen.
Ne 6stellige Lottozahl stellst du also dar indem du in einer 49 bit zahl 6 bit auf 1 setzt, die restlichen auf Null.
Und um nun die Anzahl an gleichen Stellen zwischen zwei 6stelligen Zahlen zu bestimmen, verknüpfst du 2 solche zahlen mit &.
Die Idee versteh ich, den Code in #12 noch nicht so wirklich.
Habe aber auch noch nice mitbit Operationen gearbeitet und keinen wirklich Plan was da passiert.
Bspw. bei
[CODE=java]
bettingSlip = 0;
for (int shift : numbers) {
bettingSlip |= 1 << (shift - 1);
}
[/CODE]
bin ich mir unsicher was die Zuweisung da genau tut.
Also schlicht, was die einzelnen Operanden wie <<, |=, usw tun.