- •Задание 1. Системы счисления
- •Задание 2. Логические функции и таблицы истинности
- •Задание 3. Графы, поиск пути.
- •Тема 4. Запросы в реляционных бд. Файловая система.
- •Тема 5. Неравномерные коды.
- •Тема 6. Алгоритм для исполнителя
- •Тема 7. Электронные таблицы Excel
- •Тема 8. Простейшие алгоритмы
- •Тема 9. Обработка, хранение, передача информации.
- •Тема 10. Комбинаторика.
- •Тема 11. Рекурсия.
- •Тема 12. Адресация в сети Интернет
- •Тема 13. Информационный объем, формула Шенона.
- •Тема 14. Алгоритмы для исполнителей
- •Тема 15. Поиск путей.
- •Тема 16. Системы счисления
- •Тема 17. Теория множества
- •Корвет & бриг & фрегат Тема 18. Математическая логика
- •Тема 19. Массивы и циклы
- •Тема 20. Циклы и условные операторы
- •Тема 21. Циклы и подпрограммы
- •Тема 22. Динамическое программирование
- •1. Прибавь 1
- •2. Умножь на 2
- •Тема 23. Системы логических уравнений
- •Алгоритмический минимум
Тема 10. Комбинаторика.
Тип 1. Вася составляет 6-буквенные слова, в которых есть только буквы К, А, Н, Т, причём буква К используется в каждом слове ровно 2 раза. Каждая из других допустимых букв может встречаться в слове любое количество раз или не встречаться совсем. Словом считается любая допустимая последовательность букв, не обязательно осмысленная. Сколько существует таких слов, которые может написать Вася?
Тип 2. Сколько слов длины 5, начинающихся с согласной буквы и заканчивающихся гласной буквой, можно составить из букв К, У, М, А? Каждая буква может входить в слово несколько раз. Слова не обязательно должны быть осмысленными словами русского языка.
Тип 3. Все 5-буквенные слова, составленные из букв П, О, Р, Т, записаны в алфавитном порядке и пронумерованы. Вот начало списка:
1. ООООО
2. ООООП
3. ООООР
4. ООООТ
5. ОООПО
……
Какое количество слов находятся между словами ТОПОР и РОПОТ (включая эти слова)?
Тип 4. Все 4-буквенные слова, составленные из букв М, А, Р, Т, записаны в алфавитном порядке. Вот начало списка:
1. АААА
2. АААМ
3. АААР
4. АААТ
……
Запишите слово, которое стоит на 250-м месте от начала списка.
Тип 5. Все 5-буквенные слова, составленные из букв А, К, Р, У, записаны в алфавитном порядке. Вот начало списка:
1. ААААА
2. ААААК
3. ААААР
4. ААААУ
5. АААКА
……
Укажите номер слова УКАРА.
Тип 6. Вася составляет 6-буквенные слова, в которых есть только буквы С, Л, О, Н, причём буква С используется в каждом слове ровно не менее 2х раз. Каждая из других допустимых букв может встречаться в слове любое количество раз или не встречаться совсем. Словом считается любая допустимая последовательность букв, не обязательно осмысленная. Сколько существует таких слов, которые может написать Вася?
Тип 7. Необходимо составить таблицу кодовых слов для передачи секретного сообщения. В качестве кодовых слов используются 5-буквенные слова, в которых присутствуют только буквы из слова РАКУШКА, причем первая буква должна быть либо Р, либо К; последняя буква должна быть гласной. В каждом слове должно быть не менее трех гласных букв. Сколько различных кодовых слов можно использовать?
Тип 8. Сколько существует различных символьных последовательностей длины 3 в четырёхбуквенном алфавите {A,B,C,D}, если известно, что одним из соседей A обязательно является D, а буквы B и C никогда не соседствуют друг с другом?
Тема 11. Рекурсия.
Тип 1. Ниже записаны две рекурсивные процедуры: F и G:
procedure F(n: integer); forward; procedure G(n: integer); forward; procedure F(n: integer); begin if n > 0 then G(n - 1); end; procedure G(n: integer); begin writeln('*'); if n > 1 then F(n - 2); end; |
def F(n): if n > 0: G(n - 1)
def G(n): print('*') if n > 1: F(n - 2)
|
Сколько символов «звёздочка» будет напечатано на экране при выполнении вызова F(11)?
Тип 2. Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(0) = 1, F(1) = 1
F(n) = 2*F(n–1) + F(n-2), при n > 1
Чему равно значение функции F(6)? В ответе запишите только целое число
Тип 3. Алгоритм вычисления значений функций F(n) и G(n), где n – натуральное число, задан следующими соотношениями:
F(1) = 1; G(1) = 1;
F(n) = 2*F(n–1) – G(n–1),
G(n) = 2*F(n–1) + G(n–1), при n >=2
Чему равно значение величины F(5)-G(5)? В ответе запишите только целое число.
Тип 4. Дан рекурсивный алгоритм
procedure F(n: integer); begin writeln('*'); if n > 0 then begin F(n-2); F(n-2); F(n div 2); end end; |
def F(n): print('*') if (n > 0): F(n - 2) F(n - 2) F(n // 2)
|
Сколько символов "звездочка" будет напечатано на экране при выполнении вызова F(6)?
Тип 5. Дан рекурсивный алгоритм:
procedure F(n: integer); begin if n > 0 then begin writeln('*'); F(n-2); F(n-1); F(n-1); end; writeln('*'); end; |
def F(n): if (n > 0): print("*") F(n - 2) F(n - 1) F(n - 1) print("*") |
Сколько символов "звездочка" будет напечатано на экране при выполнении вызова F(5)?
Тип 6. Дан рекурсивный алгоритм
procedure F(n: integer); begin writeln(n); if n < 6 then begin writeln(n); F(n+1); F(n+2); F(n*2) end end; |
def F(n): print(n) if (n < 6): print(n) F(n + 1) F(n + 2) F(n * 2)
|
Найдите сумму чисел, которые будут выведены при вызове F(1)
Тип 7. Ниже записаны две рекурсивные функции, F и G:
function F(n: integer): integer; begin if n > 2 then F := F(n - 1) + G(n - 2) else F := n; end; function G(n: integer): integer; begin if n > 2 then G := G(n - 1) + F(n - 2) else G := n+1; end; |
def F(n): if n > 2 : return F(n - 1) + G(n - 2) else: return n def G(n): if n > 2 : return G(n - 1) + F(n - 2) else: return n+1
|
Чему будет равно значение, вычисленное при выполнении вызова F(6)?
Тип 8. Дан рекурсивный алгоритм:
function F(n: integer): integer; begin if n < 6 then F:= n+F(n+3) * F(2*n) else F:= n*2; end; |
def F(n): if (n < 6): return n + F(n + 3) * F(2 * n) else: return n * 2 |
Чему будет равно значение, вычисленное алгоритмом при выполнении вызова F(3)?
