|
3 / 3 / 0
Регистрация: 23.08.2021
Сообщений: 71
|
|
Вывести все возможные варианты результата и их вероятности23.08.2021, 18:46. Показов 28880. Ответов 65
Метки нет (Все метки)
По пятницам мы часто играем в популярную ролевую игру "Релиз до выходных" с коллегами. Правила этой игры довольно сложны и предполагают хорошую стратегию и планирование. Чтобы иметь представление о последствиях тех или иных ходов, часто хочется понимать, насколько вероятен тот или иной исход ситуации, с учетом разных вариантов выпадения игральных костей.
Необходимо написать программу, которая сможет, приняв на вход последовательность операндов и операций, вывести все возможные варианты результата и их вероятности. Выражение на входе может содержать скобки, и следующие операторы в порядке уменьшения их приоритета: * – умножение + и - – сложение и вычитание > - левый операнд больше, чем правый. Результат равен 1, если истинно, и 0 - если ложно В качестве операндов могут выступать: n - целые положительные числа, либо 0 (0≤n≤100 000) dn - результат броска игральной кости, где n целое положительное число, количество граней (1≤n≤100 000). Результатом будет равномерное распределение вероятностей между всеми гранями (от 1 до n). Входные данные (поступают в стандартный поток ввода) Одна строка без пробелов, содержащая выражение для вычисления. Выражение гарантировано вычисляемое и не содержит синтаксических ошибок. Максимальная длина строки 200 символов. Выходные данные (ожидаются в стандартном потоке вывода) Одна или несколько строк, в каждой из которых есть два числа, разделенных пробелом: 1. целое – один из вариантов результата 2. вещественное - процент вероятности такого варианта с математическим округлением до 2 знаков и разделителем . Строки на выходе должны быть отсортированы от меньшего результата к большему. Примечание к округлению - в связи с округлением вероятностей - суммарная вероятность всех исходов может быть не равна 100%, это нормально, компенсировать это в решении не нужно.
1
|
|
| 23.08.2021, 18:46 | |
|
Ответы с готовыми решениями:
65
Вывести все возможные варианты значений Вывести все возможные варианты перестановок от 1 до n |
|
Костыли любой сложности
201 / 146 / 36
Регистрация: 27.10.2019
Сообщений: 843
|
|
| 23.08.2021, 21:48 | |
|
duck_nukem, мб пример типа на входе имеем 2+2 программа выводит "сам решай"
0
|
|
|
3 / 3 / 0
Регистрация: 23.08.2021
Сообщений: 71
|
|
| 23.08.2021, 22:01 [ТС] | |
|
user-ganz, ну например вот
Пример 1 Ввод: 2+2 Вывод: 4 100.00 Пример 2 Ввод: d4+2 Вывод: 3 25.00 4 25.00 5 25.00 6 25.00 Пример 3 Ввод: d4+(d6>2) Вывод: 1 8.33 2 25.00 3 25.00 4 25.00 5 16.67
0
|
|
|
Костыли любой сложности
201 / 146 / 36
Регистрация: 27.10.2019
Сообщений: 843
|
|||
| 23.08.2021, 22:18 | |||
|
инача в ответе 1 имеет ноль вероятности если синтаксис соответстует математическому то полагаю решение есть
0
|
|||
|
3 / 3 / 0
Регистрация: 23.08.2021
Сообщений: 71
|
|
| 23.08.2021, 22:26 [ТС] | |
|
user-ganz, что такое d4 и d6?
0
|
|
|
Костыли любой сложности
201 / 146 / 36
Регистрация: 27.10.2019
Сообщений: 843
|
||
| 23.08.2021, 22:29 | ||
|
duck_nukem,
Добавлено через 58 секунд точнее бывает, но они тогда называются фишками... но с тремя гранями точно не бывает
0
|
||
|
3 / 3 / 0
Регистрация: 23.08.2021
Сообщений: 71
|
|
| 23.08.2021, 22:55 [ТС] | |
|
user-ganz, это, что за кость, где n от 1 до 100000?
D4 и d6 это грань с 4 и 6?
0
|
|
|
Status 418
|
||||||
| 24.08.2021, 07:13 | ||||||
0
|
||||||
|
3 / 3 / 0
Регистрация: 23.08.2021
Сообщений: 71
|
|
| 24.08.2021, 08:49 [ТС] | |
|
0
|
|
|
3 / 3 / 0
Регистрация: 23.08.2021
Сообщений: 71
|
|
| 24.08.2021, 09:09 [ТС] | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 25.02.2021
Сообщений: 1
|
|
| 25.08.2021, 14:46 | |
|
Тоже решаешь задачу с отбора headhunter, да?
0
|
|
|
0 / 0 / 0
Регистрация: 25.11.2011
Сообщений: 11
|
||
| 31.08.2021, 12:53 | ||
|
0
|
||
| 31.08.2021, 15:30 | |
|
Не по теме: И потом они программистами работают?)
0
|
|
|
1 / 1 / 0
Регистрация: 02.09.2021
Сообщений: 14
|
||||||
| 02.09.2021, 13:05 | ||||||
|
Доброго времени суток.
Написал вот такой код. Я не программист прошу не судить строго за говнокод. Проходит все тесты, но ответ не правильный. Вероятнее всего что просто медленно выполняется. Для количества вероятных ответов > 500000 работает больше 1 сек. Но статус именно "неправильный ответ" Не могу придумать контрпример, если у кого есть идеи прошу помочь
0
|
||||||
|
1 / 1 / 0
Регистрация: 02.09.2021
Сообщений: 14
|
||
| 02.09.2021, 14:01 | ||
|
Если бы я точно знал что нужно оптимизировать время выполнения это одно. Однако зачем оптимизировать программу, которая выдает неверный ответ? Думаю сначала надо починить алгоритм, а я в нем найти ошибку не могу.
0
|
||
|
Status 418
|
|
| 02.09.2021, 14:18 | |
|
FedorPup, введите: 'd4+d4'
0
|
|
| 02.09.2021, 14:18 | |
|
Помогаю со студенческими работами здесь
20
Вывести все возможные варианты разреза трубы Вывести все возможные варианты хода конем Вывести на экран все возможные варианты покупок
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|