|
|
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
Есть следующий алгоритм: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. Перестановки выглядят так: 12, 21. Объясните как сделать так: если вводятся одинаковые числа - по ним перестановки не будет, т.е. вводим: 1, 1. На выходе только :11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2010, 19:31:06 |
|
||
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
отсортировать и пропустить через uniq ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2010, 21:51:25 |
|
||
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
tchingizотсортировать и пропустить через uniq Ну да, только не перестановки сами, а массив исходных значений X. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2010, 22:11:14 |
|
||
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
Vowktchingizотсортировать и пропустить через uniq Ну да, только не перестановки сами, а массив исходных значений X. Это задание нужно сделать на Pascal. Для С++ функция unique() удаляет все последовательные дубликаты из списка. Т.е. 1223 должен принять вид 123. Ну тогда на выходе получится 6 различных значений. Тогда как при 1223 получается 18! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2010, 23:13:03 |
|
||
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
пусть есть 1штрих и 1дваштриха. на выходе получаем список из 2х перестановок 1штрих, 1дваштриха 1дваштриха, 1штрих поскольку для внешнего наблюдателя и uniq 1штрих не отличим от 1дваштриха он оставит одну из перестановок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2010, 23:17:41 |
|
||
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
tchingizпусть есть 1штрих и 1дваштриха. на выходе получаем список из 2х перестановок 1штрих, 1дваштриха 1дваштриха, 1штрих поскольку для внешнего наблюдателя и uniq 1штрих не отличим от 1дваштриха он оставит одну из перестановок Как я понял: Перестановка 1,2,2 будет выполнена полностью, т.е. все 6 значений, но uniq оставит только: 122, 212, 221. Но это очень плохо. Ведь перестановка для 10-значного числа, содержащего 2 разные цифры, должна выполниться 10 раз. Например, 000000001.......1000000000. А при предложенном варианте на экран выводится 10 различных значений, но перестановка будет выполняться все 10!(факториал) раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2010, 23:47:40 |
|
||
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
Obsess Но это очень плохо. это не хорошо и не плохо, это выполнение требований тз. автор Объясните как сделать так: если вводятся одинаковые числа - по ним перестановки не будет, т.е. вводим: 1, 1. На выходе только :11. в вопросе требований к эффективности не было. след вариант см Vowk удалить дубликаты во входной последовательности цифр - и в каждой выходной перестановке восстановить дубликаты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2010, 00:34:03 |
|
||
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
Obsess Работает так. Вводим два числа: 1, 2. Перестановки выглядят так: 12, 21. Объясните как сделать так: если вводятся одинаковые числа - по ним перестановки не будет, т.е. вводим: 1, 1. На выходе только :11. Уточни задание у преподавателя. Перестановки имеет смысл делать для УНИКАЛЬНЫХ элементов множества. Если мы имеем МУЛЬТИМНОЖЕСТВО то надо дать смысл повторениям 11, 11 в множестве {1,1}. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2010, 16:12:22 |
|
||
|
Перестановки
|
|||
|---|---|---|---|
|
#18+
Автор, то, что тебе нужно это не перестановки, а сочетания тынц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2010, 11:44:37 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=36428511&tid=1343926]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
18ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 187ms |
| total: | 290ms |

| 0 / 0 |
