输入是由一些简单字母和单词组成,目标是找出字谜中的单词,这些单词可能是水平竖直和对角线的任何方向放置的。
暴力求解法
即对每个单词进行寻找,八个方向分别寻找。
#include <iostream>
#include <string>
using namespace std;
char puzzle[4][4] = { {'t','h','i','s'},
{'w','a','t','s'},
{'o','a','h','g'},
{'f','g','g','t'}};
string dict[4] = {"this","two","fat","that"};
int word_exist(int x, int y, int dir, string word);
int main(){
for (int x = 0;x<4;x++){ //控制横坐标
for (int y=0;y<4;y++){ //控制纵坐标
for (int ind=0;ind<4;ind++){ //控制输入的单词下标
for (int dir=1;dir<=8;dir++){ //控制移动方向
if(word_exi