Задание 8 - Информатика

← Вернуться к списку заданий

Условие задачи

ID Задания: F1099F

Вася составляет 6-буквенные слова, в которых встречаются только буквы Л, М, Н, причём буква Л появляется ровно 1 раз.  Каждая из других допустимых букв может встречаться в слове любое количество раз или не встречаться совсем. Словом считается любая допустимая последовательность букв, не обязательно осмысленная. Сколько существует таких слов, которые может написать Вася?

Ответ: 192

Комментарий

Заметим, что после дописывания остатка от деления суммы на два, сумма единиц в двоичном представлении(она же и будет общей суммой) либо останется четной, либо станет ей. Это значит, что при повторении *дописывания* допишется ‘0’

105= 110 10012

Тогда ближайшее число большее вышеуказанного, удовлетворяющее условию, будет 11010102 

Пусть Л стоит на первом месте. Тогда на каждое из оставшихся 5 мест можно поставить одну из 2 букв (М или Н). То есть 1 * 2 * 2 * 2* 2 * 2  = 32 варианта.  Л  можно по очереди поставить на все 6  мест, в каждом случае получая 32 варианта. Итого 6 * 32 = 192.


Решение программой:

PythonPascal

word = 'ЛМН'

k = 0

for x1 in word:

    for x2 in word:

         for x3 in word:

             for x4 in word:

                for x5 in word:

                    for x6 in word:

                        s = x1 + x2 + x3+ x4+ x5 + x6

                        if s.count('Л') == 1:

                            k += 1

print(k)

begin

  var word:= 'ЛМН';

  var count:= 0;

  foreach var x1 in word do

    foreach var x2 in word do

      foreach var x3 in word do

        foreach var x4 in word do

          foreach var x5 in word do

            foreach var x6 in word do

            begin

              var s:= x1 + x2 + x3 + x4 + x5 + x6;

              if s.CountOf('Л') = 1 then

                count += 1;

            end;

    print(count);

end.

Похожие задания

Задание 8 Задание 8 Задание 8 Задание 8 Задание 8