![]() |
|
Модераторы: Poseidon |
![]()
|
|
| Yellow666 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.6.2009 Репутация: нет Всего: нет |
Помогите пожалуйста решить задачу,или подскажите алгоритм! найти все инъективные отображения из множества чисел {1,2,...,n} в множество чисел {1,2,...,m}, где n<=m.
|
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 16 Всего: 69 |
что это такое? приведите пример |
|||
|
||||
| Yellow666 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.6.2009 Репутация: нет Всего: нет |
например: первое множество {1,2,3} ,второе {1,2,3}
1->1 1->2 1->1 1->2 1->3 1->3 2->2 2->1 2->3 2->3 2->1 2->2 3->3 3->3 3->2 3->1 3->2 3->1 всего их m!; |
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 16 Всего: 69 |
вы привели случай, когда два множества одного и того же размера. в этом случае всё просто. результат для каждой пары чисел будет их сумма - если она не превышает n, или разность по модулю, если сумма превышает n. какой будет результат, если у нас два множества разных размеров? первое: {1, 2, 3} второе: {1, 2, 3, 4, 5} |
|||
|
||||
| kamre |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 330 Регистрация: 24.3.2006 Репутация: 2 Всего: 13 |
Выбираются три элемента из второго множества, и они сопоставляются элементам из первого множества. Например вот так: выбираем (3, 4, 5), здесь важен порядок, и сопоставляем { 1 -> 3, 2 -> 4, 3 -> 5 } Всего таких отображений будет 5*4*3=60. |
|||
|
||||
| Yellow666 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.6.2009 Репутация: нет Всего: нет |
что это значит?для какой пары чисел? мне надо как-то запрогить всевозмжное число перестановок (всего m!) и какждый раз,при получении перестановки из m-множества, n первых элементов из нее сопоставить с элементами n-множества. |
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 16 Всего: 69 |
<algorithm> std::next_permutation - следующая перестановка std::prev_permutation - предыдущая перестановка я не знаю, что такое инъективное отображение. поэтому и попросил пример. а судя по вашему примеру у вас было два множества. и вы "как-то" получили третье. как мне догадаться как вы его получили? 1 множество) 1->1 1->2 1->1 1->2 1->3 1->3 2 множество) 2->2 2->1 2->3 2->3 2->1 2->2 3 множество) 3->3 3->3 3->2 3->1 3->2 3->1 Это сообщение отредактировал(а) zim22 - 29.6.2009, 16:18 |
|||
|
||||
| kamre |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 330 Регистрация: 24.3.2006 Репутация: 2 Всего: 13 |
Это такое отображение, которое разные элементы переводит в разные, т.е. (x != y) => (f(x) != f(y)). Поэтому нужно из второго множества выбрать столько же элементов, сколько и в первом, и их сопоставить. |
|||
|
||||
| airyashov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 284 Регистрация: 1.7.2008 Репутация: 1 Всего: 6 |
если правильно понял задачу
Это сообщение отредактировал(а) airyashov - 1.7.2009, 13:37 -------------------- icq:3(один)7748666 mail:airyashov( а )inbox.ru |
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |