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

Ольга со­став­ля­ет таб­ли­цу ко­до­вых слов для пе­ре­да­чи со­об­ще­ний, каж­до­му со­об­ще­нию со­от­вет­ству­ет своё ко­до­вое слово. В ка­че­стве ко­до­вых слов Ольга ис­поль­зу­ет 4-⁠бук­вен­ные слова, в ко­то­рых есть толь­ко буквы A, B, C, D, E, X, причём буква X по­яв­ля­ет­ся ровно 1 раз и толь­ко на пер­вом или по­след­нем месте. Каж­дая из дру­гих до­пу­сти­мых букв может встре­чать­ся в ко­до­вом слове любое ко­ли­че­ство раз или не встре­чать­ся со­всем. Сколь­ко раз­лич­ных ко­до­вых слов может ис­поль­зо­вать Ольга?

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

Ре­ше­ние.

Слова, ис­поль­зу­е­мые Оль­гой имеют вид Х*** или ***Х, где на месте * может сто­ять любая из 5 букв, кроме буквы Х. На это есть 53  =  125 ва­ри­ан­тов в пер­вом слу­чае и столь­ко же  — во вто­ром. Всего 250 ва­ри­ан­тов.

 

Ответ: 250.

 

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

import itertools

alphabet = "ABCDEX"

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

arl = []

for i in ar:

arl.append(list(i))

count = 0

for e in arl:

if e.count('X') == 1 and (e[0] == 'X' or e[-1] == 'X'):

count += 1

print(count)

 

При­ведём ре­ше­ние Глеба При­дать­ко на языке Python.

a = 'abcdex'

a1 = 'abcde'

c = 0

for h1 in a:

for h2 in a1:

for h3 in a1:

for h4 in a:

s = h1 + h2 + h3 + h4

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

c += 1

print(c)

 

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

begin

'A, B, C, D, E, X'.Remove(', ').Cartesian(4)

.Count(s->(s.CountOf('X')=1)and((s[1] = 'X')or(s[^1] = 'X')))

.Print;

end.


Аналоги к заданию № 9361: 9796 10313 10411 ... Все

Раздел кодификатора ФИПИ: 1.6.1 Фор­ма­ли­за­ция по­ня­тия ал­го­рит­ма