![]() |
|
Модераторы: bsa |
![]()
|
|
| agentjamesbolt007 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 5.9.2012 Репутация: нет Всего: нет |
Задача: нужно посчитать все возможные размещения n-го количество человек за n-m количеством стульев, причем стульев должно быть меньше чем людей. Формула такая; например чтобы рассадить 6 чел. на 4 стула нужно : 6*5*4*3 = 120
здесь умножение будет идти от заданного числа до конца, а мне нужно только на кол-во мест , непойму как обрезать лишнее умножение, нужно второй цикл писать или можно как то в одном все поставить??? Это сообщение отредактировал(а) agentjamesbolt007 - 5.9.2012, 09:46 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Это сообщение отредактировал(а) bsa - 5.9.2012, 10:34 |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 21 Всего: 135 |
agentjamesbolt007, есть подозрение, что формула неправильная. Откуда взялось умножение?
У меня для 6 гостей и 4 стульев получилось 5+4+3+2+1 = 15 -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
borisbn, вообще-то правильно используется умножение. У тебя 6 вариантов посадки на первый стул, после этого остается 5 вариантов на второй, 4 - на 3-й и 3 на 4-й. Итого: 6*5*4*3
|
|||
|
||||
| math64 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 12 Всего: 72 |
Если убрать условие, что гостей больше, чем стульев то будет так:
Вариантов может оказаться слишком много (факториал растёт быстро), возможно переполнение. Может быть использовать double для результата? Это сообщение отредактировал(а) math64 - 5.9.2012, 12:35 |
|||
|
||||
| agentjamesbolt007 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 5.9.2012 Репутация: нет Всего: нет |
Спасибо!
|
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 21 Всего: 135 |
хммм. а где тогда ошибка в моих рассуждениях ? Стоят всегда двое. Вот варианты: 1) 1-й и 2-й 2) 1-й и 3-й 3) 1-й и 4-й 4) 1-й и 5-й 5) 1-й и 6-й 6) 2-й и 3-й 7) 2-й и 4-й 8) 2-й и 5-й 9) 2-й и 6-й 10) 3-й и 4-й 11) 3-й и 5-й 12) 3-й и 6-й 13) 4-й и 5-й 14) 4-й и 6-й 15) 5-й и 6-й -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
1.1.1.1)1234
1.1.1.2)1235 1.1.1.3)1236 1.1.2.1)1243 1.1.2.2)1245 1.1.2.3)1246 .... 2.1.1.1)2134 2.1.1.2)2135 2.1.1.3)2136 .... 6.5.4.1)6541 6.5.4.2)6542 6.5.4.3)6543 Это сообщение отредактировал(а) bsa - 5.9.2012, 15:59 |
|||
|
||||
| math64 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 12 Всего: 72 |
borisbn, Ваш способ подсчета не учитывает порядок, в котором сидят сидящие.
Ваш ответ получается так 6!/(4!*2!). Ответ нужный ТС - 6!/2! |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
|
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 21 Всего: 135 |
Ваш способ подсчета не учитывает порядок, в котором сидят сидящие
из условий задачи не следует что это должно учитываться -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Но из условия не следует и обратное. Поэтому, используется формула ТС. |
|||
|
||||
| agentjamesbolt007 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 5.9.2012 Репутация: нет Всего: нет |
borisbn,
bsa, да ладно вам , это не суть ))) |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |