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

Задача "Кузнечик" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ std::string http://www.cyberforum.ru/cpp-beginners/thread48775.html
Господа, подскажите где можно поглядеть методы string-a литературы никакой под рукой нет, а гуглить в лоб что-то результаттов не дает. Спасибо.
C++ Несколько вопросов Здравствуйте. Возникло несколько вопросов: 1. Когда нажимаешь на определённую клавишу происходит определённое действие (типа меню)...Я на этом форуме,вроде, такое видел, но найти не удалось! http://www.cyberforum.ru/cpp-beginners/thread48771.html
C++ Помогите найти русское издание книги
Привет. Вот книга на амазоне http://www.amazon.com/dp/0596004192?tag=cpnonsqueeze-20&link_code=as3&creativeASIN=0596004192&creative=373489&camp=211189 со словами Практическое программирование на С++ облазил весь гугл - только философию Эккеля находите и Стивена Прата. Помогите найти, как эта книга у нас называется, если вообще издавалась в России.
Большая коллекция решенных задач C++
Обработка строк 1. Вывести в алфавитном порядке все буквы, которые входят в текст по одному разу 2. Является ли введенная строка палиндромом Обработка списков 1. Двойной связный список 2. Односвязные списки. Принцип работы. 3. Поместить в стек из динамического списка 4. односвязный линейный список на Си. 5. Однонаправленный список
C++ Очень простой вопрос про циклы http://www.cyberforum.ru/cpp-beginners/thread48662.html
Всем привет! Я только начал изучать с++. Меня интересует такой вопрос: Как сделать цик чтобы к переменной i добавлялась переменная i(Надеюсь понятно =)) что то на подобие for (i=1;i<40;i++){ i = i + i;
C++ Построение лабиринта на Borland С++ 3.01 Здравствуйте... Надо написать программу построения лабиринта...длина и ширина лабиринта вводится с клавиатуры. Желательно, чтобы можно было выбирать сложность лабиринта (easy,medium,hard) Он должен иметь один вход и один выход, должен иметь одно решение, т.е. от входа к выходу должен быть один путь. В лабиринте не должно быть изолированных "комнат". Любая "комната" должна соединятся с... подробнее

Показать сообщение отдельно
Жестянка
сцуко киборг
 Аватар для Жестянка
102 / 29 / 2
Регистрация: 11.09.2008
Сообщений: 193
30.08.2009, 02:28     Задача "Кузнечик"
Всё давольно просто. Тебе надо посчитать количество комбинаций из нескольких двоек и троек, сумма которых равна 20. тоесть есть выражение с двумя неизвестными: 2х+3у=20.
выражаем:

3у = 20 - 2x
y = (20 - 2x)/3


При этом есть условие, что х и у должны быть целыми.

Поэтому цыкел должен выглядеть примерно так:
C++
1
2
for(x=0;x<=20;x++)
      {if((20 - 2x)/3&1==0)k++;}
(k - счетчик подходящих комбинаций.)

как-то так. :-)

Добавлено через 4 минуты
это если не учитывается последовательность 2 и 3.

если учитывается, то, узнав у при каждом х, внутри цикла подсчитываем количество возможных комбинаций методами мат.стата

ща листинг накатаю...

Добавлено через 31 минуту
та-а-ак... количество возможных перестановок: A = n(n-1)(n-2)...(n-m+1)
n - количество эллементов т.е. x+y
m - количество возможных вариантов т.е. 2 (двойка или тройка)

Значить еще один for
C++
1
2
3
4
dk=1;
for(slog=0;slog<=3;slog++)
     {dk = dk * (x + y - slog);}
k+=dk;
и того:

C++
1
2
3
4
5
6
7
8
9
10
11
12
k=0;
for(int x=0;x<=20;x++)
      {
      y = (20 - 2x)/3;
      if(y&1==0)
           {
           dk=1;
           for(int slog=0;slog<=3;slog++)
                 {dk = dk * (x + y - slog);}
           k+=dk;
           } 
      }
 
Текущее время: 20:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru