Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.02.13;
Скачать: [xml.tar.bz2];

Вниз

Как получить все сочетания символов   Найти похожие ветки 

 
Sour   (2004-02-03 11:08) [0]

Например, есть строка: "12", 11, 12, 21, 22.
Ну сооответственно, если символов больше, то сочетаний больше.

Подскажите алгоритм получения сочетаний?


 
Digitman   (2004-02-03 11:09) [1]

никак брутфорс сотворить вознамерился ?


 
REP   (2004-02-03 11:09) [2]

Видать пароли вскрывать будем?


 
Sour   (2004-02-03 11:11) [3]

ох, блин, какие догадлевые....
че у вас за мысли?
Мне нужны все пути от объ 1 до об 2 (причем 11 подразумевает, что 1 шлет сигнал сам себе)

,hen форс, блин!!!


 
Digitman   (2004-02-03 11:17) [4]


> ох, блин, какие догадлевые


мы то, блин, догадл евые)

а вот ты про какие-то сигналы тут ... они тут причем вообще ?

так бы сразу и сказал, мол, я не знаю как реализовать алгоритм аналогичный брутфорсу ... что тут обидного-то ?


 
Sour   (2004-02-03 11:34) [5]

как организовать алгоритм, аналогичный брутфорсу?

суть такая
на квадратном поле размерностью n (2-x мерная игра) расставляются m лис. Задача: угадать расположение всех лис, назвая ячейки покоординатно. На каждый ход компьютер отвечает, количество лис попавших в "крест" (см. рисунок- l-лиса, х - куда сходили)
\ | /
\ | /
\|/
------x--l----
/|\
l | l
l | \

В общем ответ компьютера 4.
Вот коротенько суть игры. Мне необходимо написать алгоритм отгадывния. Короче путем отсеивания ячеек, я получаю только те ячейки, в которых могут находиться лисы. И мне надо получить из этого списка m сочетаний.

P.S. Сигнал - это типа пинг - я так назвал ответ компа ход.
P.S.S. Это хорошо когда лис допустим 4, а если их больше? Как получить сочетания?


 
Digitman   (2004-02-03 11:45) [6]

for i:= 1 to n do
for j:= 1 to n do
Result := Result + IntToStr(i) + "," + IntToStr(j) + ";"


 
Sour   (2004-02-03 12:01) [7]

>Digitman
Это понятно.

Допустим у меня массив от 1 до 10 of TCell;
и мне надо перебрать все варианты сочетаний! Вложенный (2-ой) цикл не катит, что 10 вложений делать?


 
Sandman25   (2004-02-03 12:04) [8]

Sour

Рекурсия.


 
Digitman   (2004-02-03 12:21) [9]


> Допустим у меня массив от 1 до 10 of TCell;


что-то непонятно - 10 у тебя есть целая 2-я степень какого n ? Ты же сам сказал - матрица квадратная у тебя)


> Вложенный (2-ой) цикл не катит, что 10 вложений делать?


почему "не катит"-то ? и где ты 10 вложений увидел ?
может я не правильно тебя понял, но мне показалось, что тебе требуется перечислить все возможные координаты эл-тов квад.матрицы ... для этого как раз достаточно 2-х циклов : внешний - по значениям координаты X, внутренний - по Y (или наоборот, как будет удобней)

и почему вообще 2-мерный массив эл-тов TCell у тебя представлен в виде одномерного ?



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.02.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.011 c
1-38916
Bizz
2004-02-05 09:43
2004.02.13
Сборник статей на Дельфи


7-39109
TriX
2003-11-26 18:00
2004.02.13
Как выключить функции клавиш power,sleep,wake .


1-38839
AMogil
2004-02-02 18:02
2004.02.13
Неправильная кодировка в программе при запуске английском Window


1-38802
Headout
2004-02-03 12:44
2004.02.13
ImageXClick - глюк с координатами


1-38775
Dysan
2004-02-03 14:13
2004.02.13
как перекрыть exception ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский