powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / найти нужное сочетание без повторений
18 сообщений из 43, страница 2 из 2
найти нужное сочетание без повторений
    #36603658
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://msdn.microsoft.com/ru-ru/library/csw1x2a6(VS.90).aspx

оператор XOR
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603662
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбоносчисла 255. т.е. 2^8-1. Дальше нужно попробовать получить формулу по которой можно получать эти цифры. Или понять
алгоритм эффективной проверки

а если не 8 а n?
то есть по хорошему надо начинать не сначала (2^n) и идти не до конца (ибо когда в старших разрядах появится n единичек, дальнейший цикл потеряет смысл)

Но это уже детали.
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603668
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VB 6.0 не очень удачно вы выбрали. для таких вещей вам лучше C/C++ использовать
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603684
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Shocker.Pro
> а если не 8 а n?

Не понял

> то есть по хорошему надо начинать не сначала (2^n) и идти не до конца (ибо когда в старших разрядах появится n
> единичек, дальнейший цикл потеряет смысл)

Правильно, последнее максимальное число - 16711680

> Но это уже детали.

Это точно :)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603702
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_OneVB 6.0 не очень удачно вы выбрали. для таких вещей вам лучше C/C++ использовать
в общем случае так и планируется)
в экселе только потому, что начал вручную разбирать весь алгоритм в клеточках)))
(*это не важно*)

но алгоритм то все-равно пригодится)))
спасибо!
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603707
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос
> Автор: Shocker.Pro
> а если не 8 а n?

Не понял

Допустим у нас X танков. Хотя нет, X - мало, пусть будет Y танков...

Автор оговорился, что число может меняться.
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603736
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rongermeKonst_OneVB 6.0 не очень удачно вы выбрали. для таких вещей вам лучше C/C++ использовать
в общем случае так и планируется)
в экселе только потому, что начал вручную разбирать весь алгоритм в клеточках)))
(*это не важно*)

но алгоритм то все-равно пригодится)))
спасибо!

это я к тому, что бэйсик не оперирует двоичным представлением числа. у него мало средств для работы с таким представлением. побитные операции лучше реализовывать в языках типа C/Java и тп, т.к. там это делать проще, компактней и наглядней.
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603750
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_Onehttp://msdn.microsoft.com/ru-ru/library/csw1x2a6(VS.90).aspx

оператор XOR
я вам о пирожках, а вы мне о котлетах )
знаю я XOR))
я же говорил, что как реализовать условие сейчас не важно -я знаю,
важно было перебрать все последовательности, чтоб не пропустить ничего
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603759
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я вам толкую, что матричное исчисление в таком применении как вы хотите - это плохо. оперируйте байтами и 32-х 64-х словами
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603761
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rongermeважно было перебрать все последовательности, чтоб не пропустить ничего

Так это...
разобрались в моем алгоритме?
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603807
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Prorongermeважно было перебрать все последовательности, чтоб не пропустить ничего

Так это...
разобрались в моем алгоритме?
вроде бы
контрольный выстрел:
начиная с 100000000000000000000000 с прибавлением по биту двигаемся
и когда сумма единичек равна 8, позиции, где стоят 1 - это и есть номера столбцов
все такие столбцы - мои клиенты, так?
ограничиваем сверху цикл 2^24
не напутал?
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603831
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну можно и так :)
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36603989
rongermeп оссылке выше что-то он мутноватый какой-тоПпц, приплыли! Этот, с позволения сказать, алгоритм, придумывают и реализуют 12-13-летние пацаны на школьной олимпиаде по программированию.
Перевожу с русского на васик почти дословно, без мелочных оптимизаций:
Код: 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.
Public Function Combination(ByVal m As Long, ByVal n As Long) As Long
 Dim x() As Long
 ReDim x( 1  To m) As Long  'Индексы
 Dim i As Long, k As Long 'Позиции
 Dim s As String          'Комбинация в строковом виде
 Dim l As Long            'Счётчик комбинаций
 
 'Необязательная инициализация
 'For i = 1 To m
 '   x(i) = i
 'Next i
 
 k =  1  '= m, если была проведена закомментированная выше инициализация
 Do
    If x(k) < n - m + k Then
       x(k) = x(k) +  1 
       For i = k +  1  To m
          x(i) = x(k) + (i - k)
       Next i
       k = m
    
       'Здесь комбинация готова к выдаче. Не печатаем её, хотя можем это
       'сделать, раскомментировав код печати ниже. Просто увеличиваем счётчик
       'комбинаций.
       l = l +  1 
'       'Печать комбинации
'       s = x(1)
'       For i = 2 To m
'          s = s & "," & x(i)
'       Next i
'       Debug.Print l, s
     
    Else
       If k <=  1  Then Exit Do
       k = k -  1 
    End If
 Loop
 Combination = l
End Function
Кстати, что там с временем выполнения?
t0=Timer:?Combination(8,24),Timer-t0
735471 0,40625
Четыре десятых секунды на моей дохлой тачке... Юзер определённо заколе устанет ждать.
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36604386
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProДопустим у нас X танков. Хотя нет, X - мало, пусть будет Y танков...

Ну так бы сразу и сказал

Эх, я когда-то рисовал различные фракталы, особенно долго просидел со скатертью Улама У меня должен быть ексельный файл в котором я выводил формулы вычисления координат для числа :)

Как давно это было , а кажется совсем недавно
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36604462
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь ГорбоносНу так бы сразу и сказал

Это скорей к "Первый результат в Гугле" высказывание.
Ибо алгоритм-то рабочий, хоть и "мутный" по выражению ТС, а мы тут мастурбировали две страницы (извиняюсь). Мне стыдно, что я не гожусь на олимпиаду для школьников.
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36604468
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Shocker.Pro
> Мне стыдно, что я не гожусь на олимпиаду для школьников.

Если интересно, возьми для себя и порисуй фракталы. Мне очень понравилось.
Правда я это делал на С++, но не вижу препятствий сделать это на VB


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36604501
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Первый результат в Гуглеrongermeп оссылке выше что-то он мутноватый какой-тоПпц, приплыли! Этот, с позволения сказать, алгоритм, придумывают и реализуют 12-13-летние пацаны на школьной олимпиаде по программированию.
...
Рейтинг: 0 / 0
найти нужное сочетание без повторений
    #36604507
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
забыл текст вставить )
спасибо, просто на работе почему - то я его коряво прочитал - дома уже все понятно было))))
а сейчас посмотрел, вы еще и реализовали его - спасибо большое)

стыдно мене ))
...
Рейтинг: 0 / 0
18 сообщений из 43, страница 2 из 2
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / найти нужное сочетание без повторений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]