传教士和食人族问题是一个众所周知的玩具问题来学习基本的人工智能技术。
我使用迭代深化深度优先搜索算法实现了它.我的状态用一个三元向量<A,B,C>来表示,其中A代表船的一侧(0/1),B和C代表岸上的食人族和传教士的数量。
#include <bits/stdc++.h>
using namespace std;
/*
SOLUTION TO 3 CANNIBAL and 3 MISSIONARIES PROBLEM
USING ITERATIVE DEEPENING DEPTH FIRST SEARCH
https://en.wikipedia.org/wiki/