A recursive solver in C++ to output all possible word searches from a file consisting of a list of legal and illegal words, as well as dimensions for the search grid. Puzzle files are provided and numbered, along with their conrresponding outputs. This was done for a Data Structures course I was taking at RPI, and so code will not be provided in this respository. However, you can send a message to my email ([email protected]) and I'll answer any questions regarding the program itself to the best of my ability.
To run the program, do ./inverse_word_search_solver.exe <puzzle_file> <output_file> <provided_mode>.
<puzzle_file> : A .txt file formatted with the number of columns and rows for the grid at the top row. A list of legal words are then provided after the dimensions, with each legal word denoted with a '+' before it. Every legal word to be added to the grid will go row by row in the file, and if provided, a list of illegal words, with each illegal word denoted with a '-' before it, following a similar structure to the list of legal words.
<output_file> : A .txt file to output the results to. The number of solutions are provided at the top, with each possible grid for the puzzle file below it. Note that if no solutions are possible with the provided puzzle file, it will consist only of the line "No solutions found."
<provided_mode> : valid arguments are either 'one_solution' or 'all_solutions'. If 'one_solution' is provided as the mode, only one grid will be provided. Otherwise, if 'all_solutions' is provided, then all possible grids for the puzzle file will be outputted.