В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
KaRRRtavbly
KaRRRtavbly
29.07.2020 17:40 •  Информатика

Без двух нулей подряд С++ Требуется посчитать количество последовательностей длины n, состоящих из цифр от 0 до k−1 таких, что никакие два соседних элемента последовательности не равны нулю одновременно.

Входные данные:
Заданы два натуральных числа N и K (2≤K≤10; 2≤N; 4≤N+K≤18).

Выходные данные:
Необходимо вывести целое число — ответ на задачу.


Без двух нулей подряд С++ Требуется посчитать количество последовательностей длины n, состоящих из ц

Показать ответ
Ответ:
аььарпашишки
аььарпашишки
30.07.2021 18:46

// кстати, а откуда задачки?

#include <iostream>

#include <string>

using namespace std;

int counter = 0;

int answer(string s, int l, int n, int length) {

   for (char ch = '0'; ch < length + '0'; ++ch) {

       if (ch == '0' && l && s[l - 1] == '0')

           continue;

       if (l + 1 < n)

           answer(s + ch, l + 1, n, length);

       else

           ++counter;

   }

   return counter;

}

int main() {

   int n, length;

   cin >> n >> length;

   cout << answer("", 0, n, length);

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота