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

Вик­тор со­став­ля­ет коды из букв, вхо­дя­щих в слово ВИК­ТОР. Каж­дая буква долж­на вхо­дить в код ровно один раз. Все воз­мож­ные коды Вик­тор за­пи­сы­ва­ет в ал­фа­вит­ном по­ряд­ке и ну­ме­ру­ет. На­ча­ло спис­ка вы­гля­дит так:

1.  ВИ­КОРТ

2.  ВИ­КОТР

3.  ВИ­К­РОТ

 

Какой код будет за­пи­сан под но­ме­ром 266?

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

Ре­ше­ние.

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

import itertools

alphabet = "ВИ­КОРТ"

ar = itertools.permutations(alphabet)

arl = []

for e in ar:

arl.append(list(e))

print(*arl[265])

 

Ответ: КИ­ВОТР.

 

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

count=1

for i in 'ВИ­КОРТ':

for j in 'ВИ­КОРТ':

for k in 'ВИ­КОРТ':

for l in 'ВИ­КОРТ':

for m in 'ВИ­КОРТ':

for n in 'ВИ­КОРТ':

s = i + j + k + l + m + n

if s.count('В')==1 and s.count('И')==1 and s.count('К')==1 and s.count('О')==1 and s.count('Р')==1 and s.count('Т')==1:

if count == 266:

print(s)

count += 1

 

При­ведём ре­ше­ние Алек­сан­дры Фи­ли­но­вой на языке Python.

from itertools import*

k = 0

for x in permutations('ВИ­КОРТ'):

s = ''.join(x)

k += 1

if k == 266:

print(k,s)

 

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

from itertools import permutations

print(sorted([''.join(p) for p in permutations('ВИК­ТОР')])[266-1])

 

 

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

begin

'ВИК­ТОР'.ToCharArray

.Permutations.Select(p -> p.JoinIntoString)

.Sorted.Numerate

.Where((c,n)->n=265)

.select(\(n,c)->c)

.Print;//КИ­ВОТР

end.


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