Go to the documentation of this file.00001
00008 #ifndef _SLITHERLINK_H_
00009 #define _SLITHERLINK_H_
00010
00011
00012 #include <vector>
00013 #include <iostream>
00014
00025 class Slitherlink
00026 {
00027 private:
00034 std::vector<std::vector<bool> > hVertices;
00035
00042 std::vector<std::vector<bool> > vVertices;
00043
00047 unsigned int width;
00048
00055 unsigned int height;
00056
00063 std::vector<std::vector<int> > hints;
00064
00065
00066 public:
00070 Slitherlink();
00071
00078 void parseInput(std::istream *input);
00079
00090 void setVertex(bool horizontal, unsigned int i,
00091 unsigned int j, bool value);
00092
00102 int getHint(unsigned int i, unsigned int j);
00103
00104 unsigned int getWidth();
00105 unsigned int getHeight();
00106
00116 void printNonHintLine(unsigned int i);
00117
00122 void printSolution();
00123 };
00124
00125
00126 #endif