Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/19: Рейтинг темы: голосов - 19, средняя оценка - 4.89
1 / 1 / 1
Регистрация: 11.12.2009
Сообщений: 3

Счастливый билет

11.12.2009, 16:46. Показов 4073. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ув. программисты, помогите пожалуйста несчастному студенту решить задачу.
(о вознаграждении договоримся)
Дан массив из 6 целых чисел от 1 до 9, представляющий собой номер автобусного билета. Проверить, является ли данный билет счастливым, то есть, можно ли, используя любые арифмитические операции и круглые скобки, а так же обединяя цифры в число, получить число 100.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.12.2009, 16:46
Ответы с готовыми решениями:

Счастливый билет!
билет с шестизначным номером считается счастливым если сумма трех старших цифр совпадает с суммой трех младших. допустим что в билетной...

Счастливый билет
Всем привет помогите с решением задачи.Вводится шестизначное число .Определить является ли билет с этим номером счастливым ?Нужно...

счастливый билет
Вводится шестизначное число .Определить является ли билет с этим номером счастливым ?с оптимизацией времени решения на турбо си!прошу...

6
283 / 262 / 32
Регистрация: 11.11.2009
Сообщений: 605
11.12.2009, 17:27
Это NP полная задача, могу помочь с алгоритмом.
Алгоритм "обхода" примерно таков:
  1. 6 цифр нужно разбить на числа всевозможными способами
  2. между числами расставить круглые скобки всевозможными способами
  3. расставить всевозможными способами знаки между числами и/или скобками, а также знак минуса перед числами и/или скобками
...и считать результат у всех получившихся выражений.

Вариантов будет много. Способов реализации - тоже может не мало.
C++ не знаю - тут не помогу.
0
1 / 1 / 1
Регистрация: 04.12.2009
Сообщений: 18
11.12.2009, 22:16
Цитата Сообщение от new_in_net Посмотреть сообщение
Это NP полная задача, могу помочь с алгоритмом.
Алгоритм "обхода" примерно таков:
  1. 6 цифр нужно разбить на числа всевозможными способами
  2. между числами расставить круглые скобки всевозможными способами
  3. расставить всевозможными способами знаки между числами и/или скобками, а также знак минуса перед числами и/или скобками
...и считать результат у всех получившихся выражений.

Вариантов будет много. Способов реализации - тоже может не мало.
C++ не знаю - тут не помогу.
да ну ты брось - там получиться штук 50 условий если не больше - сомневаюсь, что даже самый добрый препод это примет
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
12.12.2009, 17:24
Посчитаем варианты.
Значит имеем 6 цифр. Кстати от 0 до 9.
Операции у нас такие: +,-,*,/.
Добавим операцию _: например 1_5 - это значит что мы решили сделать число 15.
Скобки просто задают приоритет.
Значит имеем 5 мест где можно применить 5 операций.
Это 5^5.
Приоритет - это еще не более 5! вариантов.
Итого число вариантов не превышает: 5!*(5^5) == 375000.
Комп посчитает меньше чем за 1 сек
0
1 / 1 / 1
Регистрация: 11.12.2009
Сообщений: 3
12.12.2009, 23:32  [ТС]
Цитата Сообщение от odip Посмотреть сообщение
Посчитаем варианты.
Значит имеем 6 цифр. Кстати от 0 до 9.
Операции у нас такие: +,-,*,/.
Добавим операцию _: например 1_5 - это значит что мы решили сделать число 15.
Скобки просто задают приоритет.
Значит имеем 5 мест где можно применить 5 операций.
Это 5^5.
Приоритет - это еще не более 5! вариантов.
Итого число вариантов не превышает: 5!*(5^5) == 375000.
Комп посчитает меньше чем за 1 сек
дааа забивать 375000 формул не варик
подскажите плз хотябы алгоритм по которому решать
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
13.12.2009, 01:58
А ты пост вообще внимательно прочитал ?
Это и есть алгоритм.
Несколько вложенных циклов.
5 вложенных циклов для перебора всех операций на 5 мест.
И еще внутри перебор 5! вариантов - для порядка выполнения операций.

Добавлено через 1 минуту
Получив заданные операции и порядок вычисляешь выражение ( если оно вообще вычисляется )
и сравниваешь что результат равен 100.
Выражение может не вычисляться.
1) делить на 0 нельзя
2) деление должно быть нацело - например 8/4 делится, а вот 3/5 нет
0
jhonnysniper
14.12.2009, 19:05
Цитата Сообщение от odip Посмотреть сообщение
А ты пост вообще внимательно прочитал ?
Это и есть алгоритм.
Несколько вложенных циклов.
5 вложенных циклов для перебора всех операций на 5 мест.
И еще внутри перебор 5! вариантов - для порядка выполнения операций.

Добавлено через 1 минуту
Получив заданные операции и порядок вычисляешь выражение ( если оно вообще вычисляется )
и сравниваешь что результат равен 100.
Выражение может не вычисляться.
1) делить на 0 нельзя
2) деление должно быть нацело - например 8/4 делится, а вот 3/5 нет
народ у меня похожая задача, только без скобок - расскажите поподробнее а то я что-то нифига не понял насчёт циклов.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.12.2009, 19:05
Помогаю со студенческими работами здесь

счастливый билет
нам дается номер билета ,нужно проверить ,если мы будем разделять этот номер ,сумма цифр до раздела должна быть равна сумме цифр после...

Задача на счастливый билет
Определить , является ли заданное с клавиатуры шестизначное число четным , счастливым (сумма первых трех цифр равна сумме последних трех...

Почти счастливый билет
В гугле полно задач про "Счастливые билеты", а у меня возникла проблема с "Почти счастливыми билетами. Вот задача - Назовем “почти...

Задача про счастливый билет
Добрый день, только начинаю постигать азы, решила начать с практики, ну и конечно знаменитая задача про счастливый билет... алгоритм уж...

Написать код(счастливый билет)
Помогите пж. написать код:)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru