|
Заблокирован
|
||||||
Задача "Торговля акциями"04.07.2020, 07:54. Показов 35145. Ответов 11
Метки нет (Все метки)
Её условие звучит так:
В настоящее время на бирже при торговле акциями активно применяются компьютерные системы, которые упрощают и автоматизируют процесс покупки и продажи акций. Некоторые из них даже позволяют вести торговлю вообще без участия человека. Разумеется, основным критерием, по которому такие системы оцениваются, является прибыль, которую приносит торговля с их применением. Для того, чтобы ее повысить при построении этих систем применяются различные математические методы и модели, такие, как, например, квадратичное программирование, нейронные сети, генетические алгоритмы и т. д. Основной трудностью при создании таких систем является то, что они должны некоторым образом учитывать изменение стоимости акций в будущем, а также его прогнозировать. Ваша задача несколько проще — курсы продажи и покупки акций за весь период из n дней уже известны, необходимо лишь разработать оптимальную стратегию продаж и покупок. При этом для простоты будем считать, что за эти n дней купить акции можно не более одного раза и продать акции можно также не более одного раза. Кроме этого, будем считать, что продажа и покупка будет осуществляться только с акциями одного типа. На начало этого периода вы располагаете суммой в x рублей. Для каждого из дней известна цена ai (от ask — цена предложения), по которой можно купить одну акцию, и цена bi (от bid — цена спроса), по которой можно одну акцию продать. При этом в соответствии с действующими правилами торгов на бирже разрешается продавать и покупать только целое число акций (например, если у вас есть 5 рублей, а акция стоит 2 рубля, то вы можете купить не более двух акций). Требуется написать программу, которая по имеющимся данным о стоимости акций в каждый из дней, найдет оптимальную стратегию покупки и продажи акций. Входные данные Первая строка входного файла содержит два целых числа n и x (1 ≤ n ≤ 100000, 1 ≤ x ≤ 106). Вторая строка входного файла содержит n целых чисел a1, . . . , aт. Третья строка входного файла содержит n целых чисел b1, . . . , bт. Для каждого индекса i (1 ≤ i ≤ n) выполняются неравенства 1 ≤ bi ≤ ai ≤ 1000. Выходные данные В первой строке выходного файла выведите максимальную сумму, которой вы можете обладать по окончании рассматриваемого периода. Во второй строке выведите два числа — номер дня d1, в который следует купить акции, и номер дня d2, в который эти акции следует продать (должно выполняться неравенство d2 > d1). При этом подразумевается, что покупается столько акций, сколько их можно купить на x рублей, а потом они все продаются. Если в найденной вами стратегии продавать и покупать акции не требуется, то выведите выведите во второй строке «-1 -1». Если существует несколько вариантов оптимальной стратегии, то выведите любой из них Примеры Входные данные 5 1000 2 3 1 4 3 1 2 1 2 3 Выходные данные 3000 3 5 Входные данные 5 1000 10 9 8 7 6 9 8 7 6 5 Выходные данные 1000 -1 -1 Я уже испробовал кучу разных решений, но большинство из них не проходит и выдаёт неправильный ответ, но я не понимаю, где я ошибся. Вот решение, которое прошло 15% тестов (у меня наилучший результат):
0
|
||||||
| 04.07.2020, 07:54 | |
|
Ответы с готовыми решениями:
11
Торговля акциями Ребята, где у меня ошибка Торговля акциями |
|
3 / 3 / 0
Регистрация: 15.06.2020
Сообщений: 44
|
|
| 04.07.2020, 13:22 | |
|
Как вы узнаёте сколько процентов тестов ваше решение прошло?
0
|
|
|
3 / 3 / 0
Регистрация: 15.06.2020
Сообщений: 44
|
|||||||||||
| 04.07.2020, 15:12 | |||||||||||
|
я тоже ещё не решил говорит, не верный ответ
Добавлено через 42 секунды мне просто хочется понять сколько у меня не правильно тестов проходит Добавлено через 1 минуту А вот мой код если интересно:
А этот код работает правильно но медленно. (Хотя я вроде всё что можно ускорил) Добавлено через 27 секунд ??? Добавлено через 43 секунды как узнать сколько тестов прошло?
0
|
|||||||||||
|
2 / 2 / 0
Регистрация: 26.03.2019
Сообщений: 35
|
|
| 05.07.2020, 10:25 | |
|
Fedor11, смотря на какой тестирующей программе.
Если это Сириус, то никак, да и вообще, чаще всего пишут кол-во пройденных и непройденных тестов, но сами тесты не пишут
1
|
|
|
3 / 3 / 0
Регистрация: 15.06.2020
Сообщений: 44
|
|
| 05.07.2020, 10:51 | |
|
а на какой тест системе можно узнать кол-во пройденных тестов?
0
|
|
|
1 / 1 / 0
Регистрация: 03.06.2020
Сообщений: 13
|
|
| 06.07.2020, 13:07 | |
|
На informatics
0
|
|
|
3 / 3 / 0
Регистрация: 15.06.2020
Сообщений: 44
|
|
| 07.07.2020, 16:12 | |
|
0
|
|
|
Status 418
|
|||||||
| 08.07.2020, 03:19 | |||||||
|
а у вас на каждом шаге считается за O(n) в итоге алгоритм получается O(n^2) Добавлено через 37 минут Переделал ваш код под O(n).
2
|
|||||||
|
3 / 3 / 0
Регистрация: 15.06.2020
Сообщений: 44
|
|
| 14.07.2020, 11:44 | |
|
спасибо, ваш код правильно работает!
надо было только ускорить и всё! Спасибо.
0
|
|
|
7 / 7 / 0
Регистрация: 29.01.2022
Сообщений: 55
|
||||||
| 19.03.2023, 22:11 | ||||||
|
Спустя 3 года
Вот мое решение: Но есть странный костыль c n == 1
1
|
||||||
| 19.03.2023, 22:11 | |
|
Помогаю со студенческими работами здесь
12
Торговля акциями Задача оптимизации. Торговля орехами и сушеными фруктами. А вы забираете свои дивиденды ?? Управление акциями
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во
всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
|