Форум программистов, компьютерный форум, киберфорум
Наши страницы

Динамическое программирование - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массивы. Найти наибольший и наименьший элементы, среди расположенных на главной и побочной диагоналях http://www.cyberforum.ru/cpp-beginners/thread848745.html
Заполнить матрицу А размера 10*10 случайными числами от -5 до 23. Найти наибольший и наименьший элементы, среди расположенных на главной и побочной диагоналях
C++ Работа с XML C++ Есть файл XML, его необходимо считать и разобрать по переменным, т.е. например BlendMode="norm" в переменную (string)BMode, но не столь критично, главное чтобы удобно было работать, т.к. таких... http://www.cyberforum.ru/cpp-beginners/thread848737.html
C++ В записной книжке указаны фамилии и номера телефонов 30-ти человек. Составить программу, которая определяет, есть ли в записной книжке информация о че
В записной книжке указаны фамилии и номера телефонов 30-ти человек. Составить программу, которая определяет, есть ли в записной книжке информация о человеке с заданным номером телефона, и, если есть,...
C++ Как преобразовать шестнадцатеричное число в строку?
как записать в строку шестнадцатеричное число? например 111111111 в основании 16 в строке должно выглядеть как 4581298449 в основании 10
C++ Проектирование шаблона класса http://www.cyberforum.ru/cpp-beginners/thread848720.html
Спроектировать шаблон класса. В основной программе создать соответствующие структуры простых и сложных структур и продемлонстрировать работу с ними. (Создание классов: Динамический одновымерний...
C++ Условный оператор.Задача на полуокружность Дана точка на плоскости с координатами (х,у). Составить программу,которая выдаёт одно из сообщений:*Да*,*Нет*,*На границе* в зависимости от того,где лежит точка.Полуокружность по Х лежит от (-1;1) по... подробнее

Показать сообщение отдельно
Prim
0 / 0 / 0
Регистрация: 25.04.2013
Сообщений: 3

Динамическое программирование - C++

25.04.2013, 21:55. Просмотров 765. Ответов 2
Метки (Все метки)

Ограничение по времени: 2 секунды
Ограничение по памяти: 256 мегабайт

У Пети есть полоска бумаги, разделенная на N клеток. Он хочет раскрасить каждую клетку в
синий, красный или зеленый цвет.
Кроме этого, Пете интересны одноцветные отрезки. Петя называет одноцветным отрезком
несколько подряд идущих клеток, раскрашенных в один цвет и ограниченных с обеих сторон клет-
ками другого цвета или границами полоски.
Петя хочет, чтобы все синие одноцветные отрезки имели длину A клеток, все красные одноцвет-
ные отрезки имели длину B клеток, а все зеленые одноцветные отрезки имели длину C клеток.
Пете интересно, сколькими способами он может раскрасить полоску таким образом. Помогите
ему и вычислите это количество. Поскольку оно может быть очень большим, выведите его по модулю 109+7.
Формат входного файла
В первой строке записано четыре целых числа, разделенных пробелами — N, A, B и C
(1<=A; B; C; N<=106, A; B; C<=N).
Формат выходного файла
Выведите ответ на задачу по модулю 109 + 7.
Примеры
3 1 2 3-3
3 1 1 1-12
5 1 1 1-48
3 2 2 2-0
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru