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

Вниз

Задача по программированию   Найти похожие ветки 

 
Тульский ©   (2006-01-13 09:12) [0]

На складе имеется N пустых мешков :)  Составить программу, которая бы  искала все возможные варианты расположения мешков относительно друг друга.
Пример. Имеется два мешка 1[] и 2[], тогда все варианты для них:
1. 1[] и 2[] - два пустых мешка
2. 1[2[]] - мешок 2[] положили в мешок 1[]
3. 2[1[]] - мешок 1[] положили в мешок 2[]

для трех мешков:
1. 1[] и 2[] и 3[] - три пустых мешка
2. 1[] и 2[3[]] - мешок 1[] пустой, а в 2[]  положили 3[]
...
ну так далее.


 
Думкин ©   (2006-01-13 09:16) [1]

Мешки с отметками(нумерацией)?


 
Тульский ©   (2006-01-13 09:21) [2]


> Думкин ©   (13.01.06 09:16) [1]

да


 
ЮЮ ©   (2006-01-13 09:26) [3]

Ну и в чем здесь сложность - генерировать N в степени N исходов (каждый мешок может находиться в любом из N-1 мешком и не находиться внутри ни одного мешка), исключая "циклические", как невозможные.
так в случае с 2-мя мешками вариант 1[2] и 2[1] - невозможен


 
зав.складом   (2006-01-13 09:31) [4]

мешки "математические"? и емкость их тоже не ограничена?
а то как же 750 пустых в один положишь 8-))


 
Тульский ©   (2006-01-13 09:34) [5]


> ЮЮ ©   (13.01.06 09:26) [3]
> Ну и в чем здесь сложность

:)
вот в этом

> генерировать N в степени N исходов (каждый мешок может находиться
> в любом из N-1 мешком и не находиться внутри ни одного мешка),
>  исключая "циклические", как невозможные


 
Тульский ©   (2006-01-13 09:34) [6]


> зав.складом   (13.01.06 09:31) [4]
> мешки "математические"? и емкость их тоже не ограничена?
>

не ограничена, конечно


 
Igorek ©   (2006-01-13 10:15) [7]

простая задача


 
Тульский ©   (2006-01-13 10:18) [8]


> Igorek ©   (13.01.06 10:15) [7]
> простая задача

Простейшая


 
MBo ©   (2006-01-13 14:13) [9]

для простоты реализации - NM не более 9 (однозначные числа)


procedure TForm12.Button1Click(Sender: TObject);
var
 NM: byte;

 procedure Meshki(s:string; b:byte);
 var
   bb: byte;
   ss: string;
 begin
   if b > NM then
     Memo1.Lines.Add(s)
   else begin
     Meshki(s + IntToStr(b) + " ", b + 1);
     for bb := Length(s) downto 1 do begin
       ss:=s;
       Insert(IntToStr(b), ss, bb);
       Meshki(ss, b + 1);
     end;
   end;
 end;

begin
NM := 4;
Meshki("", 1);
Memo1.Lines.Add(IntToStr(Memo1.Lines.Count) + " variants");
end;




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

Форум: "Прочее";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.012 c
3-1133951591
msgipss
2005-12-07 13:33
2006.02.05
Каким образом можно работать из delphi с полем clob БД Oracle


15-1137262974
LordOfRock
2006-01-14 21:22
2006.02.05
Проблема :( (Windows XP Sp2)


2-1137323960
Дева
2006-01-15 14:19
2006.02.05
алгоритм поиска - метод "перемешивание"


2-1137611700
JEK2
2006-01-18 22:15
2006.02.05
Как разрешить в Edit определенные символы?


15-1136997481
QwertyKz
2006-01-11 19:38
2006.02.05
Поиск окружностей





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский