|
6 / 4 / 2
Регистрация: 09.01.2018
Сообщений: 59
|
||||||
Можно ли построить из заданного набора выражение, равное числу N27.03.2019, 22:15. Показов 12009. Ответов 127
В сборниках занимательных математических задач встречается такой тип задач, когда надо из заданных чисел и арифметических знаков составить выражение, дающее какое-то заданное число. Пример такой задачи: "Составьте из чисел 4, 1, 8, 7 и арифметических знаков выражение, равное 24". Ответом может служить такое выражение: "(8-4) * (7-1)". К сожалению, некоторые авторы допускают ошибки и предлагают нерешаемую задачу, поэтому их начальник обратился к программистам.
Необходимо написать такую программу, которая определяет, можно ли построить из заданного набора выражение, равное числу N или нет. Так как это только прототип, то достаточно написать программу, которая работает только с наборами из 4-х чисел, а число N всегда равно 24. Допустимые арифметические операторы: сложение, вычитание, умножение, деление, скобки. На входе: массив из 4-х целых чисел от 1 до 9. На выходе: true (если из заданного набора можно построить выражение, равное 24) или false (если из заданного набора такого выражения построить нельзя). Пример 1. На входе: [4, 1, 8, 7] На выходе: true Пояснение: (8-4) * (7-1) = 24 начал писать.... вроде как что-то да и получалось, но тут возник с подставлением скобок. и никак не могу придумать как правильно их ставить. ведь если она открывается или закрывается, то и расположение относительно арифм.знака меняется. вот код который получился, но не работает. подскажите как поступить. и можно ли как-то упростить эту гору циклов:
0
|
||||||
| 27.03.2019, 22:15 | |
|
Ответы с готовыми решениями:
127
Проверить, можно ли из заданного набора букв составить заданное слово Определить, сколько прямоугольных треугольников можно создать из заданного набора точек |
|
0 / 0 / 0
Регистрация: 02.04.2019
Сообщений: 9
|
|
| 05.04.2019, 23:19 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 28.03.2019
Сообщений: 25
|
|||
| 05.04.2019, 23:32 | |||
|
имейте в виду,написанный ранее код на java9 считает не совсем верно(проверено,пропускает некоторые правильные варианты если быть точным то 47 вариантов) количество естественно указано для комбинаций цифр, на каждую еще 64 комбинации знаков если не ошибаюсь .. Добавлено через 1 минуту
0
|
|||
|
502 / 348 / 134
Регистрация: 14.06.2016
Сообщений: 669
|
||||||
| 06.04.2019, 00:23 | ||||||
|
Ладно, признаю косяк )))
2
|
||||||
|
0 / 0 / 0
Регистрация: 02.04.2019
Сообщений: 9
|
||||||
| 06.04.2019, 10:56 | ||||||
|
Всем спасибо и за количество вариантов и за пробные варианты. Вроде наконец то доделал. конечный вариант выглядит так:
0
|
||||||
|
0 / 0 / 0
Регистрация: 29.03.2019
Сообщений: 61
|
|
| 06.04.2019, 18:43 | |
|
Есть уже те, кто успешно прошёл собеседование? Вот, все 5798 вариантов комбинаций чисел, из которых можно получить число 24. Если кому надо. Если кто работает со скобками, не забывайте, что они могут быть двойные. Например: (A/(B-C))*D.
0
|
|
|
0 / 0 / 0
Регистрация: 29.03.2019
Сообщений: 61
|
|
| 06.04.2019, 23:13 | |
|
В этом архиве все 5804 комбинации. В прошлом - на 6 меньше было.
0
|
|
|
6 / 4 / 2
Регистрация: 09.01.2018
Сообщений: 59
|
|
| 07.04.2019, 22:26 [ТС] | |
|
Timoved, по поводу (A/(B-C))*D. это тоже самое, что и (B-C)*D/A. так что ты просто впустую загружаешь систему ненужными вычислениями. поэтому и код медленно работает, скорее всего. если брать цикл перебора, то надо аккуратно подойти к этому, чтобы не было повторений. у меня также реализована проверка, чтобы не было ненужных операций. к примеру если а+б+в+г, то к такому выражению скобки не применяю, ну и т.д. ну, ИМХО
0
|
|
|
0 / 0 / 0
Регистрация: 29.03.2019
Сообщений: 61
|
|
| 07.04.2019, 22:53 | |
|
wolfbethowen, к сожалению, не то же самое. Но смысл понятен. Одни скобки можно просто убрать. Не совсем удачный пример привел.(A/(B-C))*D !=(B-C)*D/A. (A/(B-C))*D = A*D/(B-C). Хотя, может, и не нужны двойные скобки. Медленно считает не из-за этого. Там причина в другом
0
|
|
|
6 / 4 / 2
Регистрация: 09.01.2018
Сообщений: 59
|
|
| 07.04.2019, 23:20 [ТС] | |
|
Timoved, ну да, промахнулся. но суть та же. так поделись в чем причина.
0
|
|
|
6 / 4 / 2
Регистрация: 09.01.2018
Сообщений: 59
|
|
| 08.04.2019, 22:38 [ТС] | |
|
Timoved, ну еще бы. Каждый сам за себя)
0
|
|
|
0 / 0 / 0
Регистрация: 29.03.2019
Сообщений: 61
|
|
| 08.04.2019, 22:41 | |
|
wolfbethowen, это ты о чём?
0
|
|
|
0 / 0 / 0
Регистрация: 02.04.2019
Сообщений: 9
|
|
| 09.04.2019, 20:05 | |
|
Сказали что всё правильно позвали на собес
0
|
|
|
6 / 4 / 2
Регистрация: 09.01.2018
Сообщений: 59
|
|
| 09.04.2019, 21:11 [ТС] | |
|
Dmitry_Barynov, клёво,че! удачи! мне ничего не ответили :-(
0
|
|
|
6 / 4 / 2
Регистрация: 09.01.2018
Сообщений: 59
|
||||||
| 10.04.2019, 18:15 [ТС] | ||||||
|
LektorIn, как ты и просил, скидываю свое решение:
0
|
||||||
|
25 / 21 / 6
Регистрация: 10.12.2018
Сообщений: 115
|
|||
| 11.04.2019, 20:24 | |||
|
0
|
|||
|
0 / 0 / 0
Регистрация: 29.03.2019
Сообщений: 61
|
|
| 11.04.2019, 20:38 | |
|
JavaDoc, теоретически могут взять. Но этапы отбора надо продлить. А вообще можно многое. Хоть в одну строчку. Ограничений по количеству строк ведь в задании нет.
0
|
|
|
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
|
|
| 11.04.2019, 20:45 | |
|
JavaDoc, так напиши, а пока это слова
0
|
|
|
6 / 4 / 2
Регистрация: 09.01.2018
Сообщений: 59
|
|
| 11.04.2019, 21:01 [ТС] | |
|
JavaDoc, да у меня как бы 140 строк со всяким шлаком. можно до 100 уменьшить. но здесь не меряются длиной кода, к счастью. есть идеи, покажи.
Добавлено через 56 секунд Dmitry_Barynov, когда пойдешь на собеседование?
0
|
|
|
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
|
|
| 11.04.2019, 21:02 | |
|
универсальная программа, где не будет магических чисел и магических символов и строк в методах в 160 строк без лямбд и где будет не всё в одном методе... хмм... С радостью посмотрю на код
0
|
|
|
25 / 21 / 6
Регистрация: 10.12.2018
Сообщений: 115
|
||
| 11.04.2019, 21:08 | ||
|
0
|
||
| 11.04.2019, 21:08 | |
|
Сколькими способами гирями заданного набора можно составить вес в v грамм Пирамиду какой наибольшей высоты можно построить из набора блоков Сколькими способами гирями заданного набора весов можно составить вес в v грамм? Строки. Напечатать все пары символов, которые можно из заданного набора составить
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek
ВВЕДЕНИЕ
Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
|
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|