`
Задача Circuit
Дано ланцюг, що складається з k=4n ланок. Причому 2n ланок - золотi i 2n ланок - срiбнi. Двоє розбiйникiв бажають справедливо роздiлити срiбло та золото даного ланцюга. Складiть програму, яка знаходить мiнiмальну кiлькiсть розрiзiв ланцюга, таку, щоб як срiбло так i золото можна було б роздiлити мiж двома розбiйниками.
Технічні умови: Програма читає з клавiатури кiлькiсть ланок k, а далi - k чисел 0 або 1 (0 - срiбна ланка, 1 - золота). Всi числа вводяться одним рядком через пропуски. Програма виводить на екран єдине число - мiнiмальну кiлькiсть розрiзiв та номери ланок, мiж якими зроблено розрiзи. Перший розрiз повинен бути як можна ближче до початку ланцюга. N < 10000
Приклад.
Введення> 8 0 1 0 0 1 1 0 1
Виведення> 2 1 2 5 6
Перший розрiз виконується мiж ланками 1 i 2, другий - мiж ланками 5 i 6. Один розбiйник отримує ланцюги 0 i 101, другий - 1001.
Задача Circuit
Дана цепочка, состоящая из k=4n звеньев. Причем 2n звеньев - золотые и 2n звеньев - серебряные. Два разбойника желают справедливо разделить серебро и золото данной цепочки. Составьте программу,которая находит минимальное количество разрезов цепочки,так, чтобы как серебро так и золото можно было бы разделить между двумя разбойниками.
Технические условия: Технические условия Программа читает с клавиатуры количество звеньев k,а далее - k чисел 0 либо 1 (0 - серебряное звено, 1 - золотое).Все числа вводятся одной строкой через пробелы. Программа выводит на экран количество разрезов и номера звеньев, между которыми они были сделаны. Первый разрез должен быть как можно ближе к началу цепи. N<10000
Пример.
Ввод>8 0 1 0 0 1 1 0 1
Вывод> 2 1 2 5 6
Первый разрез выполняется между звеньями 1 и 2, второй - между звеньями 5 и 6. Один разбойник получает цепочки 0 и 101, второй - 1001.
© LIKT 1998-2024