Форум программистов, компьютерный форум CyberForum.ru

Определить, сколько существует различных раскрасок полоски из N клеток - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Алгоритмы планирования. Снижение приоритета http://www.cyberforum.ru/cpp-beginners/thread1129397.html
Написать программу, имитирующую выполнение работы процессора по алгоритму "Снижение приоритетов". очень сложно для меня,помогите,пожалуйста с объяснениями
C++ Программа, выполняющая простые арифметические операции Из книги Страуструпа "Проги для начинающих" есть программа. void error(string s) { cout << endl << s; _getch(); exit(0); } int main () { http://www.cyberforum.ru/cpp-beginners/thread1129395.html
Круговое планирование с фиксированным квантом времени C++
Алгоритмы планирования. Наименьшее остающееся время Задание: Написать программу, имитирующую выполнение работы процессора по алгоритму "Наименьшее остающееся время". и если можно с пояснениями!!)
C++ Работа с массивами в функции
Здравствуйте. Вопрос седующий - в программе есть 2 массива. Существует класс, в конструкторе которого я читаю эти 2 массива в переменные моего класса. В классе также есть 2 функции, одна работает с массивами(допустим, складывает поэлементно в 3-ий массив), а вторая выводит результат. Что-то такого типа: #include "Demodulator.h" double* I; double* Q; //представим, что в I и Q по 3 числа...
C++ Как создать программу в виде таблицы? http://www.cyberforum.ru/cpp-beginners/thread1129350.html
Написать программу вычисления значений функций F(x) в виде списка и в виде таблицы для указанного диапазона значений аргумента с приведенными значениями исходных данных. F=\frac{{cos}^{3}2x-{sin}^{3}3x}{2ab-x} Исходные значени a=0.5 b=1 Диапазон и шаг изменения x = –3,…, 9
C++ Определить попадание произвольной точки в заштрихованную область Определить попадание произвольной точки в заштрихованную область. подробнее

Показать сообщение отдельно
Man2201
 Аватар для Man2201
75 / 75 / 4
Регистрация: 25.04.2010
Сообщений: 296
25.03.2014, 18:06     Определить, сколько существует различных раскрасок полоски из N клеток
Вы немного не поняли условие задачи
В случае 3 0 0 0 не говорится что клеток нету, говорится что нету минимального количества цветов, то есть любая раскраска подходит, а всего 27 раскрасок

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream.h>
int fact(int n)
{
    if(n==0) return(1);
    if(n<0) return(0);
    int f = 1;
    for(int i=2;i<=n;i++)
        f = f*i;
    return(f);
    }
int main()
{
    int N,A,B,C;
    cin>>N>>A>>B>>C;
    int result = 0;
    for(int i = A;i <=N; i++)
       for(int j = B; j<=N; j++)
          for( int k = C; k<=N; k++)
              if(i+j+k == N)
                 result = result+fact(N)/fact(i)/fact(j)/fact(k);
    cout<<result<<endl;
    system("pause");
    }
Добавлено через 1 минуту
этот код работает правильно, только немного по принципу полного перебора. если такой сойдет - остановимся, если надо через комбинаторику вывести формулу - будем дальше думать.
 
Текущее время: 15:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru