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
10649
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 ] 

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



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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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