fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <time.h>
  5. #include <stdbool.h> // C99
  6.  
  7. #define NROWS 10
  8. #define NCOLS 10
  9. #define BOARD_SIZE (NROWS * NCOLS)
  10.  
  11. #define CHAR_IS_SPECIAL(c) ( NULL != strchr("lLsS", (c)) )
  12. #define IS_EVEN(n) ( 0 == (n) % 2 )
  13.  
  14. #define ROW_(n) ( (n) / NCOLS )
  15. #define COL_(n) ( (n) % NCOLS )
  16.  
  17. // portable altenative to Windows' system("pause")
  18. // ... to be used with fgets() instead of scanf()
  19. #define pressENTER() \
  20. do{ \
  21. int mYcHAr; \
  22. printf("\npress ENTER..."); \
  23. while ( (mYcHAr=getchar()) != '\n' && mYcHAr != EOF ) \
  24. ; \
  25. }while(0)
  26.  
  27. /* ---------------------------------------------------------- */
  28. int snake_it( int pos, int ncols )
  29. {
  30. return ROW_(pos) * ncols + (ncols - COL_(pos)) - 1;
  31. }
  32. /* ---------------------------------------------------------- */
  33. int pos_adjust_onOverflow( int pos, int lastPos )
  34. {
  35. int lastRow = ROW_(lastPos);
  36.  
  37. if ( IS_EVEN(lastRow) && pos > lastPos )
  38. {
  39. int diff = pos - lastPos;
  40.  
  41. printf( "*** %d overflowed by %d squares ***\n", pos, diff );
  42. pos = lastPos - diff;
  43. printf( "*** auto-ajusted to %d (%d,%d) ***\n", pos, ROW_(pos), COL_(pos) );
  44. }
  45. else if ( !IS_EVEN(lastRow) && pos > lastPos + (NCOLS-1) )
  46. {
  47. int diff = pos - ( lastPos + (NCOLS-1) );
  48.  
  49. printf( "*** %d overflowed by %d squares ***\n", pos, diff );
  50. pos = lastPos + diff;
  51. printf( "*** auto-ajusted to %d (%d,%d) ***\n", pos, ROW_(pos), COL_(pos) );
  52. }
  53.  
  54. return pos;
  55. }
  56. /* ---------------------------------------------------------- */
  57. void board_print( char board[], int nrows, int ncols, int posBoard[] )
  58. {
  59. int i=0, j=0;
  60. if ( !board || nrows< 1 || ncols < 1 || !posBoard )
  61. return;
  62.  
  63. // column labels
  64. printf( "\n " );
  65. for (j=0; j < ncols; j++)
  66. printf( "%d ", j );
  67. putchar('\n');
  68.  
  69. // row labels
  70. for (i=0; i < nrows; i++)
  71. {
  72. // normal board
  73. printf( "%d ", i );
  74. for (j=0; j < ncols; j++ )
  75. printf( "%c ", board[i * ncols + j] );
  76.  
  77. // positional board
  78. putchar('\t');
  79. for (j=0; j < ncols; j++ )
  80. {
  81. int n = i * ncols + j;
  82. if ( !IS_EVEN(i) && -1 != posBoard[n] )
  83. posBoard[n] = snake_it(n, ncols);
  84.  
  85. printf( "%02d ", posBoard[n]);
  86. }
  87. putchar('\n');
  88. }
  89. }
  90.  
  91. /* ---------------------------------------------------------- */
  92. int main( void )
  93. {
  94. int posBoard[BOARD_SIZE] = {0};
  95. for (int i=0; i < BOARD_SIZE; i++)
  96. posBoard[i] = i;
  97.  
  98. char board[BOARD_SIZE] = {
  99. '*','.','.','l','.','.','.','L','.','.',
  100. '.','.','.','.','s','l','.','.','.','.',
  101. '.','.','S','.','.','.','.','.','.','S',
  102. 'L','.','.','s','.','.','L','.','.','.',
  103. '.','.','.','.','l','.','.','S','.','.',
  104. '.','.','.','.','.','.','.','.','.','.',
  105. '.','.','S','.','.','l','.','s','.','L',
  106. '.','.','.','L','.','.','.','.','S','.',
  107. '.','l','.','.','.','.','.','.','.','.',
  108. '.','.','S','.','.','.','.','S','.','.'
  109. };
  110.  
  111. const int lastPos = IS_EVEN(ROW_(BOARD_SIZE-1))
  112. ? BOARD_SIZE-1
  113. : BOARD_SIZE - NCOLS;
  114.  
  115. int pos = 0, posWas = 0;
  116. int rolled = 0, round = 0;
  117. bool wasSpecial = false, isSpecial = false;
  118. int temp;
  119.  
  120. srand( time(NULL) );
  121.  
  122. while ( pos != lastPos )
  123. {
  124. posWas = pos; // remember previous pos
  125. if ( !isSpecial ) {
  126. printf( "\nROUND %d _________________\n", ++round );
  127. printf( "was at : (%d,%d) %d (%d)\n",
  128. ROW_(posWas), COL_(posWas),
  129. IS_EVEN( ROW_(posWas) ) ? posWas : (temp = snake_it(posWas, NCOLS)),
  130. posWas
  131. );
  132. }
  133.  
  134. // handle special characters
  135. wasSpecial = CHAR_IS_SPECIAL( board[pos] );
  136. if ( !wasSpecial ) {
  137. rolled = 1 + rand() % 6;
  138. printf( "rolled : %d\n", rolled );
  139. }
  140. else {
  141. if ( 'l' == board[pos] ) // 1 square down
  142. rolled = NCOLS;
  143. else if ( 'L' == board[pos] ) // 2 squares down
  144. rolled = 2 * NCOLS;
  145. else if ( 's' == board[pos] ) // 1 square up
  146. rolled = -NCOLS;
  147. else if ( 'S' == board[pos] ) // 2 squares up
  148. rolled = -2 * NCOLS;
  149. }
  150.  
  151. // calc the new position (this is way too messy!)
  152. if ( wasSpecial ) {
  153. pos += rolled;
  154. }
  155. else {
  156. if ( IS_EVEN( ROW_(posWas) ) )
  157. {
  158. pos = COL_(posWas) + rolled < NCOLS
  159. ? posWas + rolled
  160. : ROW_(posWas) == ROW_(lastPos)
  161. ? posWas + rolled
  162. : snake_it( posWas + rolled, NCOLS );
  163. }
  164. else // !IS_EVEN( ROW_(posWas) )
  165. {
  166. int diff = COL_(posWas) - rolled;
  167. pos = diff >= 0
  168. ? posWas - rolled
  169. : posWas + (NCOLS-1) - COL_(posWas) + (-diff);
  170. }
  171. }
  172. pos = pos_adjust_onOverflow( pos, lastPos );
  173.  
  174. // remember whether new pos contains a special char or not
  175. isSpecial = CHAR_IS_SPECIAL( board[pos] );
  176.  
  177. // update board contents and print it
  178. if ( !wasSpecial ) {
  179. board[posWas] = '.';
  180. posBoard[posWas] = posWas;
  181. }
  182. printf( "moved to: (%d,%d) %d (%d), found: %c\n",
  183. ROW_(pos), COL_(pos),
  184. IS_EVEN( ROW_(pos) ) ? pos : (temp = snake_it(pos, NCOLS)),
  185. pos,
  186. board[pos]
  187. );
  188. if ( !isSpecial ) {
  189. board[pos] = '*';
  190. posBoard[pos] = -1;
  191. board_print( board, NROWS, NCOLS, posBoard );
  192. // pressENTER();
  193. }
  194. }
  195.  
  196. puts( "CONGRATS, YOU MADE IT!" );
  197. // pressENTER();
  198.  
  199. exit(0);
  200. }
  201.  
  202.  
Success #stdin #stdout 0.01s 1680KB
stdin
Standard input is empty
stdout
ROUND 1 _________________
was at  : (0,0) 0 (0)
rolled  : 4
moved to: (0,4) 4 (4), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l * . . L . . 	00 01 02 03 -1 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 2 _________________
was at  : (0,4) 4 (4)
rolled  : 3
moved to: (0,7) 7 (7), found: L
moved to: (2,7) 27 (27), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . * . S 	20 21 22 23 24 25 26 -1 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 3 _________________
was at  : (2,7) 27 (27)
rolled  : 6
moved to: (3,6) 33 (36), found: L
moved to: (5,6) 53 (56), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . * . . . 	59 58 57 56 55 54 -1 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 4 _________________
was at  : (5,6) 53 (56)
rolled  : 1
moved to: (5,5) 54 (55), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . * . . . . 	59 58 57 56 55 -1 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 5 _________________
was at  : (5,5) 54 (55)
rolled  : 2
moved to: (5,3) 56 (53), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . * . . . . . . 	59 58 57 -1 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 6 _________________
was at  : (5,3) 56 (53)
rolled  : 3
moved to: (5,0) 59 (50), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 * . . . . . . . . . 	-1 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 7 _________________
was at  : (5,0) 59 (50)
rolled  : 6
moved to: (6,5) 65 (65), found: l
moved to: (7,5) 74 (75), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . * . . S . 	79 78 77 76 75 -1 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 8 _________________
was at  : (7,5) 74 (75)
rolled  : 1
moved to: (7,4) 75 (74), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L * . . . S . 	79 78 77 76 -1 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 9 _________________
was at  : (7,4) 75 (74)
rolled  : 2
moved to: (7,2) 77 (72), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . * L . . . . S . 	79 78 -1 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 10 _________________
was at  : (7,2) 77 (72)
rolled  : 3
moved to: (8,0) 80 (80), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 * l . . . . . . . . 	-1 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 11 _________________
was at  : (8,0) 80 (80)
rolled  : 4
moved to: (8,4) 84 (84), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . * . . . . . 	80 81 82 83 -1 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 12 _________________
was at  : (8,4) 84 (84)
rolled  : 1
moved to: (8,5) 85 (85), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . * . . . . 	80 81 82 83 84 -1 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 13 _________________
was at  : (8,5) 85 (85)
rolled  : 3
moved to: (8,8) 88 (88), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . * . 	80 81 82 83 84 85 86 87 -1 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 14 _________________
was at  : (8,8) 88 (88)
rolled  : 1
moved to: (8,9) 89 (89), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . * 	80 81 82 83 84 85 86 87 88 -1 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 15 _________________
was at  : (8,9) 89 (89)
rolled  : 5
moved to: (9,5) 94 (95), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . * . S . . 	99 98 97 96 95 -1 93 92 91 90 

ROUND 16 _________________
was at  : (9,5) 94 (95)
rolled  : 1
moved to: (9,4) 95 (94), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . * . . S . . 	99 98 97 96 -1 94 93 92 91 90 

ROUND 17 _________________
was at  : (9,4) 95 (94)
rolled  : 2
moved to: (9,2) 97 (92), found: S
moved to: (7,2) 77 (72), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . * L . . . . S . 	79 78 -1 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 18 _________________
was at  : (7,2) 77 (72)
rolled  : 5
moved to: (8,2) 82 (82), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l * . . . . . . . 	80 81 -1 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 19 _________________
was at  : (8,2) 82 (82)
rolled  : 5
moved to: (8,7) 87 (87), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . * . . 	80 81 82 83 84 85 86 -1 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 20 _________________
was at  : (8,7) 87 (87)
rolled  : 3
moved to: (9,9) 90 (99), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . * 	99 98 97 96 95 94 93 92 91 -1 

ROUND 21 _________________
was at  : (9,9) 90 (99)
rolled  : 2
moved to: (9,7) 92 (97), found: S
moved to: (7,7) 72 (77), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . * S . 	79 78 77 76 75 74 73 -1 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 22 _________________
was at  : (7,7) 72 (77)
rolled  : 4
moved to: (7,3) 76 (73), found: L
moved to: (9,3) 96 (93), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S * . . . S . . 	99 98 97 -1 95 94 93 92 91 90 

ROUND 23 _________________
was at  : (9,3) 96 (93)
rolled  : 5
*** 101 overflowed by 2 squares ***
*** auto-ajusted to 92 (9,2) ***
moved to: (9,2) 97 (92), found: S
moved to: (7,2) 77 (72), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . * L . . . . S . 	79 78 -1 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 24 _________________
was at  : (7,2) 77 (72)
rolled  : 2
moved to: (7,0) 79 (70), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 * . . L . . . . S . 	-1 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 25 _________________
was at  : (7,0) 79 (70)
rolled  : 4
moved to: (8,3) 83 (83), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . * . . . . . . 	80 81 82 -1 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 26 _________________
was at  : (8,3) 83 (83)
rolled  : 3
moved to: (8,6) 86 (86), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . * . . . 	80 81 82 83 84 85 -1 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 27 _________________
was at  : (8,6) 86 (86)
rolled  : 1
moved to: (8,7) 87 (87), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . * . . 	80 81 82 83 84 85 86 -1 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 28 _________________
was at  : (8,7) 87 (87)
rolled  : 5
moved to: (9,7) 92 (97), found: S
moved to: (7,7) 72 (77), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . * S . 	79 78 77 76 75 74 73 -1 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 29 _________________
was at  : (7,7) 72 (77)
rolled  : 2
moved to: (7,5) 74 (75), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . * . . S . 	79 78 77 76 75 -1 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . . . . S . . 	99 98 97 96 95 94 93 92 91 90 

ROUND 30 _________________
was at  : (7,5) 74 (75)
rolled  : 2
moved to: (7,3) 76 (73), found: L
moved to: (9,3) 96 (93), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S * . . . S . . 	99 98 97 -1 95 94 93 92 91 90 

ROUND 31 _________________
was at  : (9,3) 96 (93)
rolled  : 2
moved to: (9,1) 98 (91), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . * S . . . . S . . 	99 -1 97 96 95 94 93 92 91 90 

ROUND 32 _________________
was at  : (9,1) 98 (91)
rolled  : 5
*** 103 overflowed by 4 squares ***
*** auto-ajusted to 94 (9,4) ***
moved to: (9,4) 95 (94), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 . . S . * . . S . . 	99 98 97 96 -1 94 93 92 91 90 

ROUND 33 _________________
was at  : (9,4) 95 (94)
rolled  : 4
moved to: (9,0) 99 (90), found: .

  0 1 2 3 4 5 6 7 8 9 
0 . . . l . . . L . . 	00 01 02 03 04 05 06 07 08 09 
1 . . . . s l . . . . 	19 18 17 16 15 14 13 12 11 10 
2 . . S . . . . . . S 	20 21 22 23 24 25 26 27 28 29 
3 L . . s . . L . . . 	39 38 37 36 35 34 33 32 31 30 
4 . . . . l . . S . . 	40 41 42 43 44 45 46 47 48 49 
5 . . . . . . . . . . 	59 58 57 56 55 54 53 52 51 50 
6 . . S . . l . s . L 	60 61 62 63 64 65 66 67 68 69 
7 . . . L . . . . S . 	79 78 77 76 75 74 73 72 71 70 
8 . l . . . . . . . . 	80 81 82 83 84 85 86 87 88 89 
9 * . S . . . . S . . 	-1 98 97 96 95 94 93 92 91 90 
CONGRATS, YOU MADE IT!