switch (o0)
{
case 1: t1[0] = 0; t1[1] = 0; t1[2] = 1; break;
case 0: t1[0] = 0; t1[1] = 0; t1[2] = 0; break;
}
switch (o1)
{
case 3: t2[0] = 0; t2[1] = 1; t2[2] = 1; break;
case 2: t2[0] = 0; t2[1] = 1; t2[2] = 0; break;
case 1: t2[0] = 0; t2[1] = 0; t2[2] = 1; break;
case 0: t2[0] = 0; t2[1] = 0; t2[2] = 0; break;
}
switch (o2)
{
case 5: t3[0] = 1; t3[1] = 0; t3[2] = 1; break;
case 4: t3[0] = 1; t3[1] = 0; t3[2] = 0; break;
case 3: t3[0] = 0; t3[1] = 1; t3[2] = 1; break;
case 2: t3[0] = 0; t3[1] = 1; t3[2] = 0; break;
case 1: t3[0] = 0; t3[1] = 0; t3[2] = 1; break;
case 0: t3[0] = 0; t3[1] = 0; t3[2] = 0; break;
} switch (o3)
{
case 7: t4[0] = 1; t4[1] = 1; t4[2] = 1; break;
case 6: t4[0] = 1; t4[1] = 1; t4[2] = 0; break;
case 5: t4[0] = 1; t4[1] = 0; t4[2] = 1; break;
case 4: t4[0] = 1; t4[1] = 0; t4[2] = 0; break;
case 3: t4[0] = 0; t4[1] = 1; t4[2] = 1; break;
case 2: t4[0] = 0; t4[1] = 1; t4[2] = 0; break;
case 1: t4[0] = 0; t4[1] = 0; t4[2] = 1; break;
case 0: t4[0] = 0; t4[1] = 0; t4[2] = 0; break;
} for (int j = 0; j < 3; j++)
{ nimsum[j] = (t1[j] + t2[j] + t3[j] + t4[j]) % 2; }
if (nimsum[0] == 1 && t3[0] == 1) { o2 = o2 - 4; nimsum[0] = 0; }
if (nimsum[0] == 1 && t4[0] == 1) { o3 = o3 - 4; nimsum[0] = 0; }
if (nimsum[1] == 1 && t2[1] == 1) { o1 = o1 - 2; nimsum[1] = 0; }
if (nimsum[1] == 1 && t3[1] == 1) { o2 = o2 - 2; nimsum[1] = 0; }
if (nimsum[1] == 1 && t4[1] == 1) { o3 = o3 - 2; nimsum[1] = 0; }
if (nimsum[2] == 1 && t1[2] == 1) { o0 = o0 - 1; nimsum[2] = 0; }
if (nimsum[2] == 1 && t2[2] == 1) { o1 = o1 - 1; nimsum[2] = 0; }
if (nimsum[2] == 1 && t3[2] == 1) { o2 = o2 - 1; nimsum[2] = 0; }
if (nimsum[2] == 1 && t4[2] == 1) { o3 = o3 - 1; nimsum[2] = 0; }
jelenleg így néz ki ikszde
fingom nem volt hogy kell átváltani kettes számrendszerbe rendesen, így megkókányoltam
most próbálom megcsinálni a válaszlépést, a nimsumot már jól megcsinálja
úgy kéne lépjen, hogy mindig 0 legyen a nimsum, és elvileg ez biztos győzelem:
http://www.archimedes-lab.org/How_to_Solve/Win_at_Nim.htmlde gond van ha 1 1 5 7 a kezdő lépés, akkor arra ugye 1155 lesz a válaszlépés, ha erre azt lépem, hogy 1150 akkor kiakad az egész, mert a nimsum 101 lesz, viszont ha így kivenné az ötöt és 0-ra rendezné, akkor vesztene 1100, miközben ha 1150 ra azt lépné hogy 111 akkor nyerne
szóval nem tudom, hogy most az algoritmussal van alapvető gond, vagy csak elbaszarintok valamit
fáradt vagyok msot az egész feladatot elolvasni, de ha ilyen tömbökbe kell bepakolgatnod átváltást, akkor mondjuk: