хмммм...
условия задачи я не знаю, но из логики вещей разумно предположить, что именно это и является самой главной частью задачи. (-: лучше выложи условия задачи целиком.
вообще, в инете (а особенно -- вне его) встречал статьи по поводу решения этой задачи.
но если бы такая задача стояла передо мной и мне, как и тебе, было бы вломак (да и просто неинтересно) искать, то я бы попробовал думать в таком направлении:
- отсек брутфорс (тупой перебор) как бесперспективный
- попробовал проанализировать задачу на предмет возможности разбиения на подзадачи (переставление местами групп фишек)
- в зависимости от результата предыдущего пункта рассмотрел бы перспективы рекурсии
- рассмотрел бы игровое поле как массив чисел (типа "вес", можно как абсолютное значение, а можно и относительно "стабильного" состояния), по которому "гуляет" пустышка (ноль), изменяя значения сразу двух клеток: откуда пришла и куда ушла. искал бы тут закономерности.
- схалтурил бы: генерировал бы доску не случайно, а путем случайных последовательных перемещений из "стабильного" состояния, записывая эти ходы. при нажатии на специальную кнопку просто выдавал бы эти ходы, но в обратном порядке. (-:
но стоит отметить, что если речь идет о
наименьшем числе ходов, то по-любому нужно математическое обоснование. (-:
ЗЫ: надеюсь, ты уже в курсе, что при случайном распределении эта задача в половине случаев решения не имеет? (-: