ВУЗ:
Составители:
Рубрика:
29
бусинками; при этом суммарное количество бусинок в обоих
случаях равняется 8.
При снятии бусинок с каждого из концов белая бусинка
рассматривается как бусинка голубого или красного цвета по
ситуации, т.е . может сниматься как с голубыми, так и с
красными.
Напишите программу, которая:
1. Вводит данные из входного файла с именем bys.dat,
каждая строка которого содержит конфигурацию бус,
заданную в виде последовательности цветов и записывает
входные данные в выходной файл с именем bys.sol
2. Для каждой конфигурации бус определяет М –
максимальное число собранных бусинок и положение
одной из оптимальных точек разрыва.
3. Выводит в качестве результата в выходной файл bys.dat
число М и точку разрыва.
Пример
входные данные выходные данные
bbwbrrrwbrbrrrrrb 10 between 16 and 17
РЕШЕНИЕ
Идея решения достаточно проста . Необходимо
проверить все возможные точки разрыва и для каждой точки
разрыва определить число снимаемых бусинок. В символьном
массиве A: array [1..3*N] of char будем хранить утроенную
конфигурацию бус. Это поможет избежать трудностей при
переходе через точку «склейки» бус, т.е . от бусинки N к бусинке
1 и наоборот. Так , например, бусам , изображенным на рисунке
3, будет соответствовать символьный массив А, приведенный на
рисунке 4.
Страницы
- « первая
- ‹ предыдущая
- …
- 27
- 28
- 29
- 30
- 31
- …
- следующая ›
- последняя »
