тут скорее задача будет не изучение алгоритмов, а изучение пролога) потому что, чтобы решить это на прологе - надо уже решить это на обычном языке сначала, и понять, как оно)
"надо уже решить это на обычном языке сначала"
Сразу неверный подход. С началом пролога придётся всё из других языков забыть