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

Сколь­ко су­ще­ству­ет де­ся­тич­ных чисел, ко­то­рые де­лят­ся на 5, при усло­вии что все цифры числа раз­лич­ные?

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

Ре­ше­ние.

Для того. чтобы число де­ли­лось на 5, оно долж­но окан­чи­вать­ся на 0 или 5.

Рас­смот­рим слу­чай, когда число окан­чи­ва­ет­ся на 0. Если число со­сто­ит из одной цифры, то это толь­ко 0 (1 ва­ри­ант). Если из двух, тогда это 0 в раз­ря­де еди­ниц и одно из 9 цифр в раз­ря­де де­сят­ков, тогда это 9*1 ва­ри­ан­тов. Если число со­сто­ит из трех цифр, тогда это 0 в раз­ря­де еди­ниц, одно из 9 цифр в раз­ря­де де­сят­ков, одна из 8 цифр в раз­ря­де сотен (так как цифры числа долж­ны быть раз­ные). Тогда это 8*9*1 ва­ри­ан­тов и так далее.

Рас­смот­рим слу­чай, когда число окан­чи­ва­ет­ся на 5. Если число со­сто­ит из одной цифры, то это толь­ко 5 (1 ва­ри­ант). Если из двух, тогда это 5 в раз­ря­де еди­ниц и одно из 8 цифр в раз­ря­де де­сят­ков (0 быть не может, так как число не может с него на­чи­нать­ся), тогда это 8*1 ва­ри­ан­тов. Если число со­сто­ит из трех цифр, тогда это 5 в раз­ря­де еди­ниц, одна из 8 цифр в раз­ря­де де­сят­ков, одна из 8 цифр в раз­ря­де сотен (так как цифры числа долж­ны быть раз­ные). Тогда это 8*8*1 ва­ри­ан­тов. И так далее.

Со­ста­вим про­грам­му.

 

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

nol=[1]

pat=[1,8]

for i in range(1,10):

nol.append(nol[i-1]*(10-i))

for i in range(2,10):

pat.append(pat[i-1]*(10-i))

print(sum(pat)+sum(nol))

 

Ответ: 1863219.

 

При­ведём ре­ше­ние Мак­си­ма Фа­ти­хо­ва на языке Python.

from itertools import permutations

word = '0123456789'

c = 0

for j in range(1,11):

for i in permutations(word,j):

x = ''.join(i)

if x[0] != '0' and (x[-1] == '5' or x[-1] == '0'):

c += 1

print(c + 1) #+1 слу­чай когда число равно 0

 

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

from math import perm # число раз­ме­ще­ний

print(2*sum(perm(9,k) for k in range(10)) - sum(perm(8,k) for k in range(9)))

Источник: ЕГЭ по ин­фор­ма­ти­ке 19.06.2023. Ос­нов­ная волна. Раз­ные го­ро­да