Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. Необходимо из bit varying получить все подмножества с единицами. Например: было 01011 подмножества будут следующие: 01011 00011 01001 01010 00001 00010 01000 01000 00000 Может кто видит решение, кроме как написание функции с рекурсией. Если видит подскажите какое. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2008, 16:42 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
что-то закономерность вхождения элемента в "подмножество с единицами" не ясна... именно, что значит "подмножество с единицами" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2008, 17:35 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
Gold_, Ниче непонял. Может что-то типа этого? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2008, 06:13 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
Спасибо откликнувшимся Виноват... Попробую еще раз: В моем случае необходимо найти такие значение в которых для любой единицы найдется соотвествующая единица в заданной строке. Как опять не понятно...пример пусть задано 101, тогда "подмножестваами" будут 101 001 100 000 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2008, 17:39 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
select distinct generate_series(0,'10110'::bit(5)::integer)::bit(5) & '10110'::bit(5); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2008, 17:54 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
LeXa NalBatselect distinct generate_series(0,'10110'::bit(5)::integer)::bit(5) & '10110'::bit(5); Красиво и просто!!! Жаль у меня используется огромный размер - не влазиит в INT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2008, 18:37 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
надо что менять в логике ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2008, 18:45 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
Gold_Жаль у меня используется огромный размер - не влазиит в INTgenerate_series есть и над bigint. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. однако если в десятичном виде не влезает в int, то сколько же знаков содержит двоичная запись, больше 32? Gold_надо что менять в логикевозможно. имхо, задача странная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2008, 12:14 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
безотносительно PostgreSQL, задача сводится к перечислению целых от 1 до 2^N-1, где N - колличество ненулевых бит в аргументе. Дальше нужно вставить нули обратно. X = 01011 N = 111 1 - 001 -> 0001 2 - 010 -> 0010 3 - 011 -> 0011 4 - 100 -> 1000 5 - 101 -> 1001 6 - 110 -> 1010 7 - 111 -> 1011 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2008, 12:36 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#18+
gpбезотносительно PostgreSQL, задача сводится к перечислению целых от 1 до 2^N-1, где N - колличество ненулевых бит в аргументе. Дальше нужно вставить нули обратно. X = 01011 N = 111 1 - 001 -> 0001 2 - 010 -> 0010 3 - 011 -> 0011 4 - 100 -> 1000 5 - 101 -> 1001 6 - 110 -> 1010 7 - 111 -> 1011а еще можно утверждать, что задача сводится к вычислению списка битых ("ненулевых") битов для 01011 это 01000 00010 00001 и комбинированию их (рекурсивно или в цикле) скажем: внешний цикл по глубине комбинаций от 1 до числа битых (N, здесь N=3) внутри - (двоичный т. FOR i=0 TO 1) цикл выборки невыбранных еще в комбинацию битых. вычислительно это видимо попроще, чем свертка исходного числа с полным набором вариантов. зы автор правда разбавляет это множество нулем 00000. оно ему надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2008, 13:02 |
|
||
|
найти все подмножества
|
|||
|---|---|---|---|
|
#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. 31. 32. 33. 34. 35. 36. 37. 38. 39. label_theme_big это домен например такой Код: plaintext 1. 2. 3. Нормально использовать времянки так, как я понял, можно с версии 8.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2008, 17:37 |
|
||
|
|

start [/forum/topic.php?fid=53&gotonew=1&tid=2003807]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
12ms |
get first new msg: |
7ms |
get forum data: |
3ms |
get page messages: |
82ms |
get tp. blocked users: |
2ms |
| others: | 210ms |
| total: | 396ms |

| 0 / 0 |
