(Pascal) Задача по дискретной математике. Перестановка корзин
Перестановка корзин:
Даны 2n корзин с шарами A и B, расположенной в ряд.(n<=5)
Пример: |A|B|B|A| | |A|B|A|B|
Два места под корзины пустые. Другие n-1 корзина содержат шары A и n-1 корзина шары B.
Необходимо составить алгоритм и написать программу, которая бы переставляла корзины с шарами A с одной стороны, а корзины с шарами B с другой стороны. Правила перемещения корзин: разрешается переставлятьна пустые места любые две смежные (пара) непустые корзины, сохраняя их первоначальный порядок.
Исходные данные представлены в текстовом файле со следующей структурой. Первая строка: 2n - число корзин с пустыми местами. Вторая строка: |A|B|B|A| | |A|B|A|B| - исходное арсположение корзин. Расчетные данные сохранить в текстовом файле со следующей структурой. Каждая строка - состояние корзин после каждой перестановки.