Ошибка.
Попробуйте повторить позже
Мишель составляет слова путём перестановки букв своего имени и располагает их в алфавитном порядке. Под каким номером будет находиться слово ШМЕЛЬИ? (Нумерация начинается с 1).
from itertools import permutations s = ’МИШЕЛЬ’ r = sorted(permutations(s)) pattern = [x for x in ’ШМЕЛЬИ’] position = 1 for x in r: if list(x) == pattern: print(position) break position += 1
Ошибка.
Попробуйте повторить позже
Теоретик составляет восьмизначные числа и делит его на пары по две цифры. Сколько чисел он может составить, чтобы склеенные попарно цифры числа, образующие двузначные числа, образовывали при чтении слева направо возрастающую арифметическую прогрессию?
cnt = 0 for a in range(10, 99 + 1): for b in range(a + 1, 99 + 1): for c in range(b + 1, 99 + 1): for d in range(c + 1, 99 + 1): if b - a == c - b == d - c: cnt += 1 print(cnt)
Ошибка.
Попробуйте повторить позже
Вениамин составляет семибуквенные слова из букв своего имени, следуя правилам: каждая буква может встречаться любое количество раз, в слове должна быть последовательность из трёх одинаковых символов, попарно разделенных любыми другими символами. (Например в слове ВЕВИВМН три буквы В разделены буквами Е и И). Сколько различных слов может составить Вениамин?
from itertools import product s = set(’ВЕНИАМИН’) ot = set() for i in product(s, repeat=7): word = ’’.join(i) for k in range(3): if word[k] == word[k + 2] == word[k + 4] and word[k + 1] != word[k] and word[k + 3] != word[k]: ot.add(word) print(len(ot))
Ошибка.
Попробуйте повторить позже
Шизофреник составляет пятизначные числа так, чтобы они содержали в своей записи хотя бы один собственный делитель. (Например число 12345 имеет делитель 5, а также имеет 5 в своём составе, значит оно подходит). Сколько таких чисел может составить шизофреник?
Примечание: собственным делителем называется любой его делитель, отличный от самого числа.
from itertools import product def f(x): c = set() for k in range(2, int(x ** 0.5) + 1): if x % k == 0: c.add(str(k)) c.add(str(x // k)) return c s = ’0123456789’ cnt = 0 t = set() for i in product(s, repeat=5): i = ’’.join(i) if i[0] == ’0’: continue if ’1’ in i: t.add(i) continue for j in f(int(i)): if j in i: t.add(i) continue print(len(t))
Ошибка.
Попробуйте повторить позже
Виктор составляет слова длины 6 из букв русского алфавита в верхнем и нижнем регистрах. Все составляемые слова являются палиндромами, в которых все буквы могут встречаться любое количество раз, а символ Й может стоять только рядом с другим символом Й. Сколько слов может составить Виктор?
Решение:
from itertools import product # Алфавит в верхнем регистре s = ’АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ’ # Добавляем также алфавит в нижнем регистре s = s + s.lower() cnt = 0 # Палиндром - значит последние 3 символа это перевернутые первые 3 символа # значит можем составить только первую половину и мысленно её продублировать и развернуть for i in product(s, repeat=3): word = ’’.join(i) # Нужно пропустить неподходящие слова: # **Й -> **ЙЙ** - подходит # *Й* -> *Й**Й* - не подходит # Й** -> Й****Й - не подходит # *ЙЙ -> *ЙЙЙЙ* - подходит # Й*Й -> Й*ЙЙ*Й - не подходит # ЙЙ* -> ЙЙ**ЙЙ - подходит # ЙЙЙ -> ЙЙЙЙЙЙ - подходит # Делаем вывод, что не подходят слова с одной Й, у которых она не на последнем месте, # а также с двумя Й, которые не стоят рядом (в центре не Й) if ’Й’ in word: if word.count(’Й’) == 1 and word[-1] != ’Й’ or word.count(’Й’) == 2 and word[1] != ’Й’: continue cnt += 1 print(cnt)
Ошибка.
Попробуйте повторить позже
Суперкомпьютер для разминки генерирует тройки слов. Первое слово имеет длину 5 и состоит из букв слова ПИРОГ, в нём каждая буква может встречаться любое количество раз, при этом буква Р может стоять только после буквы О. Второе слово имеет длину 4 и состоит из цифр шестеричной системы счисления. Третье слово имеет также длину 4 и состоит из цифр пятеричной системы счисления. Причём количество чётных цифр во втором и третьем словах должно быть одинаковым.
Необходимо найти общее число троек, которое может составить Суперкомпьютер.
from itertools import product s1 = ’ПИРОГ’ cnt1 = 0 for i in product(s1, repeat=5): word = ’’.join(i) if word.count(’Р’) == word.count(’ОР’): cnt1 += 1 s2 = ’012345’ s3 = ’01234’ cnt23 = 0 for i in product(s2, repeat=4): i = ’’.join(i) if i[0] != ’0’: for j in product(s3, repeat=4): j = ’’.join(j) if j[0] != ’0’: i = i.replace(’2’, ’0’).replace(’4’, ’0’) j = j.replace(’2’, ’0’).replace(’4’, ’0’) if i.count(’0’) == j.count(’0’): cnt23 += 1 print(cnt1 * cnt23)
Ошибка.
Попробуйте повторить позже
Методист составляет для задачи пятизначные числа в четырнадцатиричной системе счисления. Сколько чисел из тех, что он составит, будут делиться на 38?
from itertools import product s = ’0123456789ABCD’ cnt = 0 for k in product(s, repeat=5): num = ’’.join(k) if num[0] != ’0’ and int(num, 14) % 38 == 0: cnt += 1 print(cnt)
Ошибка.
Попробуйте повторить позже
Арез составляет шестибуквенные слова из букв слова НАКОВАЛЬНЯ. Каждая буква может встречаться в слове только один раз, на первом месте не может стоять буква Ь, а буква Л может стоять только в окружении гласных. Сколько слов может составить Арез?
from itertools import permutations s = set(’НАКОВАЛЬНЯ’) gl = ’АОЯ’ cnt = 0 for i in permutations(s, 6): i = ’’.join(i) if i[0] == ’Ь’ or i[0] == ’Л’ or i[-1] == ’Л’: continue flag = True for j in range(1, len(i) - 1): if i[j] == ’Л’: if not ((i[j - 1] in gl) and (i[j + 1] in gl)): flag = False break if flag: cnt += 1 print(cnt)
Ошибка.
Попробуйте повторить позже
Гоша составляет восьмизначные числа. Причём рядом не должны состоять цифры с одинаковым остатком от деления на 5, а также на последнем месте может быть только чётная цифра. Сколько слов может составить Гоша?
a1 = ’123456789’ a2 = ’0123456789’ a3 = ’02468’ cnt = 0 for x1 in a1: for x2 in a2: if int(x1) % 5 == int(x2) % 5: continue for x3 in a2: if int(x2) % 5 == int(x3) % 5: continue for x4 in a2: if int(x3) % 5 == int(x4) % 5: continue for x5 in a2: if int(x4) % 5 == int(x5) % 5: continue for x6 in a2: if int(x5) % 5 == int(x6) % 5: continue for x7 in a2: if int(x6) % 5 == int(x7) % 5: continue for x8 in a3: if int(x7) % 5 != int(x8) % 5: cnt += 1 print(cnt)
Ошибка.
Попробуйте повторить позже
Студент составляет для отчёта названия источников. Названия должны иметь длину от 5 до 10 символов и состоять только из первых пятнадцати символов русского алфавита в верхнем регистре. Каждое название должно начинаться и заканчиваться гласной буквой, а в между ними содержать неповторяющиеся согласные буквы. Сколько названий студент вписал в отчёт, если он из всех составленных выбрал только те, в которых получилось сочетание символов БВГ.
from itertools import permutations # АБВГДЕЁЖЗИЙКЛМН gl = ’АЕЁИ’ sogl = ’БВГДЖЗЙКЛМН’ cnt = 0 for i in range(3, 8 + 1): for x2 in permutations(sogl, i): x2 = ’’.join(x2) if ’БВГ’ in x2: for x1 in gl: for x3 in gl: cnt += 1 print(cnt)
Ошибка.
Попробуйте повторить позже
Иван составляет 9-разрядные двадцатипятиричные числа, в которых цифры, которые кратны трем и кратны восьми, чередуются. Сколько различных слов может составить Иван?
Для составления чисел можно использовать цифры от 0 до 9 и числа от 10 до 24 включительно. Из них кратны трем: 0, 3, 6, 9, 12, 15, 18, 21, 24. Кратны восьми: 0, 8, 16, 24. Кратны и трем, и восьми: 0, 24
Количество 9-разрядных чисел, которые начинаются с цифры, кратной трем:
Количество 9-разрядных чисел, которые начинаются с цифры, кратной восьми:
Также нам необходимо из общего количества вычесть те числа, которые находятся и в первом случае, и во втором случае. Их число равно:
Получаем общее число слов:
Ошибка.
Попробуйте повторить позже
В классе занимаются 14 человек. Учитель каждый день выборочно проверяет домашнее задание и всегда опрашивает четное количество учащихся, при этом ситуация, когда никто не опрошен, невозможна. Сколькими различными способами учитель может провести опрос?
Возможны варианты опроса 2, 4, 6, 8, 10, 12 и 14 человек. Найдем по формуле сочетаний количество способов для каждого варианта:
2 ученика:
4 ученика:
6 учеников:
8 учеников:
10 учеников:
12 учеников:
14 учеников:
Всего возможных вариантов:
Ошибка.
Попробуйте повторить позже
Демид составляет пятибуквенные слова из букв КРОВАТЬ, содержащие букву Р, но не более четырех раз. Остальные буквы не могут повторяться. Сколько различных слов может составить Демид?
Допустим, что в слове 1 буква Р. Ее можно поставить на 5 позиций пятью способами. Способов расстановки остальных букв по четырем позициям: . Итого получаем слов.
Допустим, что в слове 2 буквы Р. Их можно поставить на 5 позиций способами. Способов расстановки остальных букв по трем позициям: . Итого получаем слов.
Допустим, что в слове 3 буквы Р. Их можно поставить на 5 позиций способами. Способов расстановки остальных букв по двум позициям: . Итого получаем слов.
Допустим, что в слове 4 буквы Р. Их можно поставить на 5 позиций способами. Способов расстановки остальных букв на оставшуюся позицию: . Итого получаем слов.
Общее число слов:
Ошибка.
Попробуйте повторить позже
Ира составляет пятизначные числа в девятиричной системе счисления. Сколько различных чисел, делящихся на 25 без остатка, может составить Ира?
Алфавит девятиричной системы счисления: 0, 1, 2, 3, 4, 5, 6, 7, 8.
Переведем первое пятизначное число из девятиричной системы счисления в десятичную:
Переведем последнее пятизначное число из девятиричной системы счисления в десятичную:
Все числа в десятичной системе счисления, которые больше 6561 и меньше 59048 в девятиричной системе счисления будут являться пятизначными.
Вспомним признак делимости на 25: число, составленное из двух последних цифр, делится на 25.
Первое кратное 25 число в десятичной системе счисления из нужного диапазона - 6575, последнее - 59025. Осталось посчитать количество чисел между ними, кратных 25: (конечное - начальное).
Ошибка.
Попробуйте повторить позже
АЛЕКСЕЙ из букв своего имени составил алфавит для генерации шестибуквенных слов. Буквы в слова могут входить любое количество раз, либо не входить совсем. Все слова записали в алфавитном порядке и пронумеровали с 1. На каком месте будет стоять слово КСЕЛЕА ?
Запишем буквы в алфавитном порядке: А, Е, К, Л, С, Й и пронумеруем от 0 до 5.
А - 0, Е - 1, Й - 2, К - 3, Л - 4, С - 5.
Тогда слово КСЕЛЕА имеет вид . То есть слово КСЕЛЕА стоит на месте.
Ошибка.
Попробуйте повторить позже
Гоша составляет словосочетания длины 7 из пробелов и букв своего имени. При этом никакие две гласные и две согласные не стоят рядом. Словосочетанием считается три слова, разделённых между собой пробелами. Слова не обязательно должны быть осмысленными словами русского языка. Сколько различных словосочетаний может составить Гоша?
Запишем возможные варианты словосочетаний:
здесь количество словосочетаний:
здесь количество словосочетаний:
здесь количество словосочетаний:
здесь количество словосочетаний:
здесь количество словосочетаний:
здесь количество словосочетаний:
Получаем общее количество словосочетаний:
Ошибка.
Попробуйте повторить позже
Иван составляет 7-разрядные двадцатеричные числа, в которых цифры, которые кратны двум и девяти, чередуются. Сколько различных слов может составить Иван?
Для составления чисел можно использовать цифры от 0 до 9 и числа от 10 до 19 включительно. Из них кратны двум: 0, 2, 4, 6, 8, 10, 12, 14, 16, 18. Кратны девяти: 0, 9, 18. Кратны и двум, и девяти: 0, 18.
Количество 7-разрядных чисел, которые начинаются с разряда, кратного двум:
Количество 7-разрядных чисел, которые начинаются с разряда, кратного девяти:
Также нам необходимо из общего количества вычесть те числа, которые находятся и в первом случае, и во втором случае. Их число равно:
Получаем общее число слов:
Ошибка.
Попробуйте повторить позже
Петя составляет 7-буквенные слова, содержащие в себе только заглавные буквы латинского алфавита, содержащиеся в восьменадцатиричной системе счисления. Сколько различных слов может составить Петя с учётом того, что все согласные буквы в слове различны и не могут стоять в начале, в середине и в конце слова?
Алфавит для составления слов включает в себя следующие буквы: A, B, C, D, E, F, G, H. Из них гласные – A, E; согласные – B, C, D, F, G, H.
На четыре доступных для согласных позиции можем расставить соответственно от нуля до четырех согласных. Причём если эти четыре позиции заняты не полностью гласными или не полностью согласными, нужно также домножать на количество возможных позиционных расстановок - сочетаний C из n по k:
Допустим, что в слове 0 согласных: .
Допустим, что в слове 1 согласная. Ее можно поставить на 4 позиции четыремя способами: .
Допустим, что в слове 2 согласные. Их можно поставить на 4 позиции способами: .
Допустим, что в слове 3 согласные. Их можно поставить на 4 позиций способами: .
Допустим, что в слове 4 согласные: .
Для конечного ответа сложим все получившиеся результаты.
Ошибка.
Попробуйте повторить позже
Максим составляет 5-буквенные слова перестановкой букв слова САПОГ. При этом в слове не могут стоять рядом две гласные и две согласные буквы. Словом считается любая допустимая последовательность букв, не обязательно осмысленная. Сколько слов может составить Максим?
from itertools import permutations count = 0 for x in permutations(’САПОГ’): s = ’’.join(x) if (’СП’ not in s) and (’ПС’ not in s) and (’СГ’ not in s) and (’ГС’ not in s) and (’ПГ’ not in s) and (’ГП’ not in s) and (’ОА’ not in s) and (’АО’ not in s): count += 1 print(count)
Ошибка.
Попробуйте повторить позже
Таина составляет 6-буквенные слова перестановкой букв слова МАШИНА. При этом в слове буква А не может стоять на первом, а буква Ш не может стоять на последнем месте. Словом считается любая допустимая последовательность букв, не обязательно осмысленная. Сколько слов может составить Таина?
from itertools import permutations count = 0 for x in permutations(’МАШИНА’): s = ’’.join(x) if s[0] != ’А’ and s[-1] != ’Ш’: count += 1 print(count/2)