Задания
Версия для печати и копирования в MS Word
Тип 8 № 25840
i

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

Спрятать решение

Ре­ше­ние.

Пусть Б стоит в слове на пер­вом месте. Тогда на каж­дое из остав­ших­ся 3 мест можно по­ста­вить не­за­ви­си­мо одну из 4 букв. То есть всего 4 умно­жить на 4 умно­жить на 4 = 64 ва­ри­ан­та.

Таким об­ра­зом, Б можно по оче­ре­ди по­ста­вить на все 4 места, в каж­дом слу­чае по­лу­чая 64 ва­ри­ан­та.

Итого по­лу­ча­ет­ся 64 умно­жить на 4 = 256 слов.

 

Ответ: 256.

 

При­ведём ре­ше­ние на языке Python.

import itertools

alphabet = "БЕЛКА"

ar = itertools.product(alphabet, repeat=4) #Раз­ме­ще­ние с по­вто­ре­ни­ем

arl = []

for i in ar:

arl.append(list(i))

count = 0

for e in arl:

if e.count("Б") == 1:

count += 1

print(count)

 

При­ведём ре­ше­ние Бо­ри­са Са­ве­лье­ва на языке Python.

from itertools import product

k = 0

for i in product('белка', repeat = 4):

if i.count('б') == 1:

k += 1

print(k)

 

 

При­ведём ре­ше­ние Сер­гея Донец на языке PascalABC.NET.

begin

'Б, Е, Л, К, А'.Remove(', ')

.Cartesian(4)

.Count(s->s.CountOf('Б')=1)

.Print;

end.


Аналоги к заданию № 18079: 25840 Все

Источник: ЕГЭ по ин­фор­ма­ти­ке 2020. До­сроч­ная волна. Ва­ри­ант 2
Раздел кодификатора ФИПИ: 1.6.1 Фор­ма­ли­за­ция по­ня­тия ал­го­рит­ма