7 std::vector<int>
north(3);
8 int newregion(0), newcard(0), newcrate(0);
9 if (card == 0 || card == 2 || card == 4) {
12 if (crate != 0 && crate != 9)
16 }
else if (card == 1 || card == 3 || card == 5) {
20 }
else if (card == 6) {
23 newregion = region + 1;
24 if (crate != 0 && crate != 9)
30 newregion = region - 1;
34 north.at(0) = newcrate;
35 north.at(1) = newcard;
36 north.at(2) = newregion;
41 int newcrate(0), newcard(0), newregion(0);
42 std::vector<int>
south(3);
43 if (card == 0 || card == 2 || card == 4) {
47 }
else if (card == 1 || card == 3 || card == 5) {
50 if (crate != 8 && crate != 17)
54 }
else if (card == 6) {
58 newregion = region + 1;
61 newregion = region - 1;
62 if (crate != 8 && crate != 17)
68 south.at(0) = newcrate;
69 south.at(1) = newcard;
70 south.at(2) = newregion;
75 int newcrate(0), newcard(0), newregion(0);
76 std::vector<int>
west(3);
82 newregion = region + 1;
84 if (card != 4 && card != 5) {
86 newregion = region - 1;
87 }
else if (card == 4) {
90 }
else if (card == 5) {
101 if (card == 0 || card == 1) {
103 newcrate = crate - 9;
108 newregion = region - 1;
111 }
else if (card != 6) {
115 newregion = region + 1;
118 newregion = region - 1;
120 }
else if (card == 6) {
129 west.at(0) = newcrate;
130 west.at(1) = newcard;
131 west.at(2) = newregion;
136 int newcrate(0), newcard(0), newregion(0);
137 std::vector<int>
east(3);
139 if (card != 0 && card != 1 && card != 6) {
142 newregion = region + 1;
145 newregion = region - 1;
148 }
else if (card == 0 || card == 1) {
151 newcrate = crate + 9;
155 newregion = region - 1;
157 }
else if (card == 6) {
170 newregion = region + 1;
172 if (card != 4 && card != 5) {
174 newregion = region - 1;
175 }
else if (card == 4) {
178 }
else if (card == 5) {
189 east.at(0) = newcrate;
190 east.at(1) = newcard;
191 east.at(2) = newregion;
196 int newcrate(0), newcard(0), newregion(0);
197 std::vector<int>
se(3);
201 newcrate = crate + 9;
209 }
else if (card == 1) {
212 newcrate = crate + 10;
219 newcrate = crate + 1;
225 }
else if (card == 2 || card == 4) {
228 newcard = card - 1 + 2 * region;
229 }
else if (card == 5 || card == 3) {
231 newcard = card - 3 + 2 * region;
233 newcrate = crate + 1;
236 }
else if (card == 6) {
245 newcrate = crate + 1;
251 if (card == 0 || card == 2) {
254 newcard = card + 2 * region + 1;
255 }
else if (card == 1 || card == 3) {
257 newcard = card - 1 + 2 * region;
259 newcrate = crate + 1;
262 }
else if (card == 4) {
271 }
else if (card == 5) {
280 newcrate = crate + 1;
283 }
else if (card == 6) {
292 se.at(2) = newregion;
297 int newcrate(0), newcard(0), newregion(0);
298 std::vector<int>
sw(3);
302 newcrate = crate - 9;
310 }
else if (card == 1) {
313 newcrate = crate - 8;
320 newcrate = crate + 1;
326 }
else if (card == 2 || card == 4) {
329 newcard = card - 1 + 2 * region;
330 }
else if (card == 5 || card == 3) {
332 newcard = card - 3 + 2 * region;
334 newcrate = crate + 1;
337 }
else if (card == 6) {
346 newcrate = crate + 1;
352 if (card == 0 || card == 2) {
355 newcard = card + 1 + 2 * region;
356 }
else if (card == 1 || card == 3) {
358 newcard = card - 1 + 2 * region;
360 newcrate = crate + 1;
363 }
else if (card == 4) {
372 }
else if (card == 5) {
381 newcrate = crate + 1;
384 }
else if (card == 6) {
393 sw.at(2) = newregion;
398 int newcrate(0), newcard(0), newregion(0);
399 std::vector<int>
ne(3);
406 newcrate = crate + 8;
411 newcrate = crate - 1;
415 }
else if (card == 1) {
419 newcrate = crate + 9;
422 }
else if (card == 2 || card == 4) {
424 newcard = card - 1 + 2 * region;
426 newcrate = crate - 1;
429 }
else if (card == 5 || card == 3) {
431 newcard = card - 3 + 2 * region;
433 }
else if (card == 6) {
438 newcrate = crate - 1;
447 if (card == 0 || card == 2) {
449 newcard = card + 1 + 2 * region;
451 newcrate = crate - 1;
454 }
else if (card == 1 || card == 3) {
456 newcard = card - 1 + 2 * region;
458 }
else if (card == 4) {
461 newcrate = crate - 1;
468 }
else if (card == 5) {
475 }
else if (card == 6) {
483 ne.at(2) = newregion;
488 int newcrate(0), newcard(0), newregion(0);
489 std::vector<int>
nw(3);
496 newcrate = crate - 10;
501 newcrate = crate - 1;
505 }
else if (card == 1) {
509 newcrate = crate - 9;
512 }
else if (card == 2 || card == 4) {
514 newcard = card - 1 + 2 * region;
516 newcrate = crate - 1;
519 }
else if (card == 5 || card == 3) {
521 newcard = card - 3 + 2 * region;
523 }
else if (card == 6) {
528 newcrate = crate - 1;
537 if (card == 0 || card == 2) {
539 newcard = card + 1 + 2 * region;
541 newcrate = crate - 1;
544 }
else if (card == 1 || card == 3) {
546 newcard = card - 1 + 2 * region;
548 }
else if (card == 4) {
551 newcrate = crate - 1;
558 }
else if (card == 5) {
565 }
else if (card == 6) {
573 nw.at(2) = newregion;
std::vector< int > west(int crate, int card, int region)
std::vector< int > north(int crate, int card, int region)
std::vector< int > sw(int crate, int card, int region)
std::vector< int > south(int crate, int card, int region)
std::vector< int > nw(int crate, int card, int region)
std::vector< int > ne(int crate, int card, int region)
std::vector< int > east(int crate, int card, int region)
std::vector< int > se(int crate, int card, int region)