Форум » Кодирование и декодирование информации » Комбинаторика задание 10 (теперь 8) №157 » Ответить

Комбинаторика задание 10 (теперь 8) №157

Vin: 157) Сколько существует чисел, делящихся на 5, десятичная запись которых содержит 6 цифр, причём все цифры различны и никакие две чётные и две нечётные цифры не стоят рядом. У меня получается 1200, если заканчивается нулем, то 3*3*4*4*5*1, а оканчивается пятеркой 2*3*4*4*5*1, что-то не учитываю?

Ответов - 9

polyakovss: Здравствуйте, Vin! НЧНЧНЧ (последняя 0): 544331 = 720 ЧНЧНЧН (последняя 5): 444331 = 576 (первая цифра числа не может быть 0) 720 + 576 = 1296

Vin: спасибо, расставляла с конца(

ЕЛ: здравствуйте. Игорь составляет 8-буквенные коды из букв И, Г, О, Р, Ь. Буквы О и Ь должны встречаться в коде ровно по одному разу, при этом буква Ь не может стоять на первом месте. Остальные допустимые буквы могут встречаться произвольное количество раз или не встречаться совсем. Сколько различных кодов может составить Игорь? правильно ли решение? буква О 8 раз, буква Ь 7 вариантов. Остальные буквы 3^6=729 Итого 729*(8+7)=10935 Заранее благодарю.


cabanov.alexey: Я бы сказал 7*7*3^6 = 35721

ЕЛ:

timsc1: Vin пишет: 157) Сколько существует чисел, делящихся на 5, десятичная запись которых содержит 6 цифр, причём все цифры различны и никакие две чётные и две нечётные цифры не стоят рядом. У меня получается 1200, если заканчивается нулем, то 3*3*4*4*5*1, а оканчивается пятеркой 2*3*4*4*5*1, что-то не учитываю?

Поляков: timsc1 пишет: Кто-нибудь пробовал эту задачу запрограммировать??? [pre2] def valid(x): x = str(x) even = "02468" odd = "13579" for i in range(len(x)-1): if x.count(x[ i]) > 1: return False if (x[ i] in even and x[i+1] in even) or \ (x[ i] in odd and x[i+1] in odd): return False return True count = 0 for x in range(100000, 1000000, 5): if valid(x): count += 1 print(count)[/pre2]

polyakovss: [pre2] n=['1','3','5','7','9'] c=['0','2','4','6','8'] count=0 for i in range(100000,1000000): x=str(i) if len(set(x))==6 and i % 5 == 0 and \ (x[0] in n and x[2] in n and x[4] in n and x[1] in c and x[3] in c and x[5] in c \ or x[0] in c and x[2] in c and x[4] in c and x[1] in n and x[3] in n and x[5] in n): count+=1 print(count) [/pre2]

timsc1: Поляков polyakovss Спасибо огромное! Дай вам БОГ здоровья!



полная версия страницы