Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.16;
Скачать: CL | DM;

Вниз

Пожалуйста помогите разобраться с задачей!   Найти похожие ветки 

 
terdaw   (2006-03-26 16:42) [0]

Пожалуйста помогите разобраться с задачей!  В первой строке дано число D, во второй строке записаны 4 натуральных числа  0 < K1 < K2 < K3 < K4 <= 15000. Нужно узнать сколькими способами можно получить число D, складывая или вычитая эти числа.
пример:
400
100 300 700 1500  

ответ: 3


 
Palladin ©   (2006-03-26 16:53) [1]

перебором например


 
TUser ©   (2006-03-27 09:11) [2]

Бесконечным количеством способов. При такой постановке задачи.

Если же оговорить, что каждое число можно использовать только один раз, - тогда задача решается так.
Числа из второй строкизапишем в массив A[0..n-1]. Для каждой префиксной подпоследовательности (т.е. 0-0, 0-1, ..., 0-n-1) будем хранить список чисел, которые из них можно получить, и число способов, которыми можно получить такое число. Для подпоследовательности 0-0 такой список очевиден. Для каждой последующей его легко получить из списка для предыдущей. В конце ты получаешь список всех чисел, которые могут быть получены из данной последовательности, и указано по скольку раз. Требуется найти число из первой строчки.


 
TUser ©   (2006-03-27 09:15) [3]

Опс, не заметил. Думал, что может быть произвольное кол-во чисел. А так - перебором, с учетом оговорки из [2].


 
terdaw   (2006-03-27 14:11) [4]

Ну помогите же решить задачу!!! Нужно делать перебором, а как это перебором? Объясните пожалуйста!
Ещё раз задача:
В первой строке дано число D, во второй строке записаны 4 натуральных числа  0 < K1 < K2 < K3 < K4 <= 15000. Нужно узнать сколькими способами можно получить число D, складывая или вычитая эти числа.
пример:
400
100 300 700 1500  

ответ: 3


 
terdaw   (2006-03-27 14:13) [5]

ой.. не туда написал


 
oldman ©   (2006-03-27 17:14) [6]

четыре числа: a, b, c, d
a+b+c+d
a+b+c-d
a+b-c+d
a+b-c-d
a-b+c+d
a-b+c-d
a-b-c-d
-a+b+c+d
-a+b+c-d
-a+b-c+d
-a+b-c-d
-a-b+c+d
-a-b+c-d
-a-b-c-d

вроде, ничего не забыл.. всего 14 результатов, которые надо сравнить с исходным...


 
oldman ©   (2006-03-27 17:24) [7]

В условии забыто "каждое число используется только один раз" !!!
А то 300+700+300-100-100-100-100-100-100-100-100-100 тоже =400
:))))))))))


 
Lamer@fools.ua ©   (2006-03-27 17:26) [8]

>вроде, ничего не забыл.. всего 14 результатов, которые надо сравнить с исходным...

А должно быть 16.


 
oldman ©   (2006-03-27 17:30) [9]

забыл

a-b-c+d
-a-b-c+d


 
oldman ©   (2006-03-27 17:48) [10]


> Ну помогите же решить задачу!!! Нужно делать перебором,
> а как это перебором? Объясните пожалуйста!


Не орех. конечно, но тоже попахивает...
Вам не надоело решать задачки 9-го класса предмет "Инфолрматика"???


 
TUser ©   (2006-03-27 19:21) [11]

Может еще быть, что допускается использовать не все числа. Тогда результатов будет 3^4 = 81.


 
terdaw   (2006-03-27 20:12) [12]

да! так и надо!



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

Текущий архив: 2006.04.16;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.03 c
2-1143977392
Кир
2006-04-02 15:29
2006.04.16
Большие числа


2-1143796237
creative
2006-03-31 13:10
2006.04.16
не назначена картинка в TImage


15-1143311396
Топоним
2006-03-25 21:29
2006.04.16
Об употреблении некоторых топонимов


2-1143867577
Homakk
2006-04-01 08:59
2006.04.16
подсветка синтаксиса


1-1142248706
Пономарев Андрей
2006-03-13 14:18
2006.04.16
"Нити" и showmessage