]> git.scottworley.com Git - slidingtile/blobdiff - sliding_tile.go
Switch from Go to C++
[slidingtile] / sliding_tile.go
diff --git a/sliding_tile.go b/sliding_tile.go
deleted file mode 100644 (file)
index 68cd4b1..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-package main
-
-import "flag"
-import "fmt"
-import "os"
-import "reflect"
-import "strconv"
-
-import "github.com/petar/GoLLRB/llrb"
-import "github.com/willf/bloom"
-
-var bloomsize = flag.Int("bloomsize", 2000000, "Size bloomfilter for this many states.")
-
-const HOLE = 0
-const BOARD_DIM = 4
-const BOARD_SIZE = BOARD_DIM * BOARD_DIM
-
-type Space int8
-type Board [BOARD_SIZE]Space
-type Step struct {
-       board  Board
-       prev   *Step
-       length int
-}
-
-const (
-       LEFT  = -1
-       RIGHT = +1
-       UP    = -BOARD_DIM
-       DOWN  = +BOARD_DIM
-)
-
-func read_board_from_strings(in []string) (*Board, error) {
-       if len(in) != BOARD_SIZE {
-               return nil, fmt.Errorf("Please provide %d values", BOARD_SIZE)
-       }
-       var b Board
-       for i, s := range in {
-               num, err := strconv.Atoi(s)
-               b[i] = Space(num)
-               if err != nil {
-                       return nil, err
-               }
-       }
-       return &b, nil
-}
-
-func adjacent_spaces(s Space) []Space {
-       if s < 0 || s >= BOARD_SIZE {
-               panic("Invalid space")
-       }
-       var adjacent []Space
-       if s >= BOARD_DIM {
-               adjacent = append(adjacent, s+UP)
-       }
-       if s < BOARD_SIZE-BOARD_DIM {
-               adjacent = append(adjacent, s+DOWN)
-       }
-       if s%BOARD_DIM != 0 {
-               adjacent = append(adjacent, s+LEFT)
-       }
-       if s%BOARD_DIM != BOARD_DIM-1 {
-               adjacent = append(adjacent, s+RIGHT)
-       }
-       return adjacent
-}
-
-func create_successors(start *Step) {
-  for _, adj := adjacent_spaces(start.
-}
-
-func sliding_tile(start *Board) error {
-  seen := bloom.NewWithEstimates(uint(*bloomsize), 0.0001)
-  seen.Add(reflect.ValueOf(*start).Bytes())
-  return nil
-}
-
-func main() {
-  flag.Parse()
-       start, err := read_board_from_strings(flag.Args())
-       if err != nil {
-         fmt.Println(err)
-               os.Exit(1)
-       }
-       err = sliding_tile(start)
-       if err != nil {
-         fmt.Println(err)
-               os.Exit(1)
-       }
-}