2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 шарики красные и белые
Сообщение10.07.2017, 14:37 
Аватара пользователя


21/06/08
476
Томск
Сколько способов распределения 5 красных шариков м 4 белых шариков на одном ряде, чтобы не существовать 3 одинакоцветных шариков на одном ряде?

 Профиль  
                  
 
 Re: шарики красные и белые
Сообщение10.07.2017, 14:51 
Заслуженный участник
Аватара пользователя


13/08/08
14448
Я так полагаю, что "на одном ряде" означает "подряд", то есть, например,
ККБККБКББ,ККБККББКБ... :?:
Ну уж не больше стадвадцатишести, по крайней мере :-) .

 Профиль  
                  
 
 Re: шарики красные и белые
Сообщение10.07.2017, 16:05 
Заслуженный участник


10/01/16
2315
43 ?

 Профиль  
                  
 
 Re: шарики красные и белые
Сообщение10.07.2017, 16:20 
Аватара пользователя


21/06/08
476
Томск
gris в сообщении #1232582 писал(а):
Я так полагаю, что "на одном ряде" означает "подряд", то есть, например,
ККБККБКББ,ККБККББКБ... :?:
Ну уж не больше стадвадцатишести, по крайней мере :-) .

Да подряд.

-- Пн июл 10, 2017 17:20:47 --

DeBill в сообщении #1232605 писал(а):
43 ?

Мой друг сказал ответ 45.

 Профиль  
                  
 
 Re: шарики красные и белые
Сообщение10.07.2017, 17:30 
Заслуженный участник
Аватара пользователя


23/07/08
10653
Crna Gora
Да, Ваш друг сказал ответ правильно.

 Профиль  
                  
 
 Re: шарики красные и белые
Сообщение10.07.2017, 19:21 
Заслуженный участник


10/01/16
2315
daogiauvang в сообщении #1232610 писал(а):
Мой друг сказал ответ 45.

А, да, 45, я парочку лишних удалил...
Но решал как то по дурному... А есть ли вааще красивое решение?

 Профиль  
                  
 
 Re: шарики красные и белые
Сообщение10.07.2017, 20:30 
Заслуженный участник
Аватара пользователя


13/08/08
14448
Я тоже сначала решал вычитанием, а потом повторил напрямую. Для наглядности обозначим красный шарик через А, а белый через _.
Рассмотрим конфигурацию, где нет двойных шариков. Она одна: А_А_А_А_А.
Рассмотрим конфигурации ровно с одной красной парой.
Вначале конфигурацию, где четыре красных и три белых по одному. Она тоже одна: А_А_А_А. Теперь четырьмя способами добавим красный шарик, чтобы образовать одну красную пару: АА_А_А_А, А_АА_А_А и т.д. Теперь в каждую пятью способами добавим один белый шарик без разбития красной пары. Все 20 конфигураций разные.
Рассмотрим конфигурации с двумя красными парами, одним красным одиночкой и двумя белыми.
Ну три их: АА_АА_А, АА_А_АА, А_АА_АА и т.д. И в каждую восемью способами добавляем два белых. Получаем 24 конфигурации.
А больше никаких не бывает. И тогда всего 45 конфигураций.
Обобщить на большее количество шариков таким способом трудновато будет :-(

 Профиль  
                  
 
 Re: шарики красные и белые
Сообщение10.07.2017, 22:24 
Заслуженный участник


10/01/16
2315
gris
О, это другое дело: слАживать лучше, чем вычитать!
Тогда, для любых $n,m$ будет:
$\sum\limits_{}^{} C^{n-k-1}_{k+1}C^{m-k}_{k} +\sum\limits_{}^{} C^{m-k-1}_{k+1}C^{n-k}_k +2\sum\limits_{}^{} C^{n-k}_k C^{m-k}_k$,
где суммы - по всем допустимым $k$....

 Профиль  
                  
 
 Re: шарики красные и белые
Сообщение13.08.2017, 19:20 
Аватара пользователя


27/02/09

416
Мегаполис
программку на Питоне набрал для проверки
да, 45

(Оффтоп)

Код:
import re
#сколько ch в строке
def skoka_ch(str,ch):
    i=0
    k=0
    l=len(str)
    while i<l:
       if str[i]==ch:
            k=k+1
       i=i+1
    return k
#добавить нули в начало строки до длины n
def add_nuli_do_n(str,n):
    if len(str)<n:
        while len(str)<n:
            str='0'+str
    return str
   
#вычитаем по 1 из q0 и проверяем
q0=int('111110000',2)
q1=int('000111111',2)
k=0
pp=re.compile('111|000')
while q0>=q1:
    if skoka_ch(bin(q0)[2:],'1')==5:
        if pp.search(bin(q0)[2:]) is None:
            k=k+1
            print(add_nuli_do_n(bin(q0)[2:],11))
    q0=q0-1                 
                     
print "All =", k

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: YandexBot [bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group