|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.11.2018, 21:53 | #1 |
Новичок
Джуниор
Регистрация: 14.11.2018
Сообщений: 1
|
Расставить знаки
Задача
Даны N целых чисел X1, X2, ..., XN. Расставить между ними знаки "+" и "-" так, чтобы значение получившегося выражения было равно заданному целому S. Входные данные В первой строке находятся числа N и S. В следующей строке - N чисел через пробел. 2 <= N <= 24, 0 <= Xi <= 50 000 000, -1 000 000 000 <= S <= 1 000 000 000 Я решаю на python. Решаю рекурсией, а именно - перебором всех вариантов, пока не встречу своё искомое выражение. Но такое решение прошло только 6 тестов из 9. На остальных TL в 0.002с. Скажите, можно ли улучшить мой алгоритм? Или тут нужен другой подход? Была ещё идея решить бинпоиском , но это уж как-то муторно по-моему. Код:
Последний раз редактировалось BDA; 16.11.2018 в 00:35. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Расставить между цифрами знаки арифметических операций | yura4044 | Помощь студентам | 3 | 09.03.2018 00:59 |
Расставить между ними знаки + и - так, чтобы значение получившегося выражения было равно заданному целому S | apethegod | Помощь студентам | 1 | 23.12.2017 13:20 |
Заданы цифры - расставить знаки сложения и вычитания так, чтобы получилось выражение. Учесть склеивания цифр. | MDefs | Общие вопросы C/C++ | 1 | 01.10.2016 21:02 |
Задача на C# - заданы цифры - расставить знаки сложения и вычитания так, чтобы получилось выражение с заданным результатом | eduard93 | Помощь студентам | 1 | 08.12.2011 00:03 |
Расставить комментарии | bookkc | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 5 | 16.09.2010 10:00 |