XXIV Олимпиада по программированию учетно-аналитических задач (в среде 1С)

27.04.13

Сообщество - О жизни

Организатор олимпиады - Фирма «1С» и Финансовая Академия при Правительстве РФ. Ее суть – написать внешнюю обработку, которая бы анализировала исходную базу и выдавала правильный ответ. Цель – привлечь и выявить талантливых студентов, "подсадить" их на 1С с раннего возраста Предлагаю вашему вниманию задание нашего регионального тура.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование SM По подписке [?]
Каркасная конфигурация
.1cd 752,00Kb
92
92
0 SM
Скачать
Задание I тур 2010 Оренбург.doc
.doc 102,00Kb
71
71
0 SM
Скачать

Продолжение темы //infostart.ru/public/19068/

Информационная поддержка http://fa-kit.ru/main_lst.php?top_id=11965&desc=1

Информационный выпуск http://www.1c.ru/news/info.jsp?id=11249


Олимпиада стала традиционной. В ней студенты бурятся за ценные призы (поездка в Париж, ноутбук + УПП, КПК + web-расширение, iPod) и почетные грамоты (сертификаты 1С). Не студенты могут ради интереса принять в ней участие заочно.

Действие проводится в два тура. Первый (отборочный) ложится на плечи региональные представительств. Второй проводится на базе учебного центра №3 фирмы «1С».
В этом году у нас была такая задача. Обидно, что ее никто не решил. 

Постановка задачи
Брокерская компания производит операции на рынке ценных бумаг. Организация коммерческая, поэтому ее цель – максимизировать прибыль. В рамках автоматизации компании была разработана информационная база на основе платформы 1С:Предприятие 8, содержащая данные о прогнозируемых курсах ценных бумаг.
Вам необходимо разработать механизм, который бы определял оптимальное поведение на рынке, т.е. подсказывал в какой момент необходимо покупать и продавать определенный вид ценных бумаг, чтобы в итоге получить как можно больший прирост денежных средств.

Состав конфигурации:
- задание участнику (формат word 2003);
- исходная структура данных (справочник, документ, регистр сведений);
- контрольный пример;
- отчет по курсам ценных бумаг (СКД);
- решение жюри (не включен в интерфейс);
- чекер для проверки правильности решений (не включен в интерфейс).

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

PS: Мне кажется, что есть решение одним пакетом запросов. Что скажете?

 

См. также

О жизни Россия Бесплатно (free)

Данная статья сугубо для раздела «О жизни», но может оказаться полезна многим членам сообщества. Все описанное ниже соответствует актуальному российскому законодательству на момент публикации статьи. У вас нет и в ближайшее время не предвидится детей возрастом до 1.5 лет? Вспомните о родственниках / друзьях / коллегах / знакомых, у которых они есть, и отправьте ссылку на эту статью — она может быть им чрезвычайно полезна. Распространите среди жильцов вашего ЖЭКа, как говорилось в одном классическом произведении. Помните, что, ставя плюсы к статье, вы поддерживаете её автора!

01.07.2024    3587    madonov    37    

46

О жизни Linux Системный администратор Программист Платформа 1С v8.3 Россия Бесплатно (free)

Использование Linux в качестве основной ОС для программиста 1С, возможно ли это? Решил поделиться личным опытом работы перехода на эту систему. В статье моя история без технических деталей максимально простым языком. И, спойлер, да, жизнь на Линуксе для разработчика 1С возможна и с каждым годом становится всё комфортней. Статья рассчитана на людей, с Линуксом не знакомых, специалистов прошу не кидаться помидорами.

16.05.2024    4310    soulner    32    

43

О жизни Россия Бесплатно (free)

Подводим итоги работы в 1С за 2023 год. Все о вас: 4 подробных раздела с цифрами, графиками и ужасными цветами диаграмм (должна же где-то быть стабильность).

08.02.2024    25259    Neti    85    

117

О жизни Бесплатно (free)

В процессе написания статей на тему Идеальное место работы ЗУПера нужен аргументированный текст про адекватного работодателя. Информации получилось много, поэтому выделю в отдельные 2 статьи. Рассмотрим все недостатки работодателей от момента собеседования до момента увольнения. Все этапы, как всегда, подкреплены реальными случаями из моего опыта.

22.01.2024    4699    biimmap    67    

74

О жизни Конфигурации 1cv8 Бесплатно (free)

В процессе написания статей на тему Идеальное место работы ЗУПера нужен аргументированный текст про адекватного работодателя. Информации получилось много, поэтому выделю в отдельные 2 статьи. Рассмотрим все недостатки работодателей от момента собеседования до момента увольнения. Все этапы, как всегда, подкреплены реальными случаями из моего опыта.

16.01.2024    6138    biimmap    99    

79

О жизни Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Бесплатно (free)

Импортозамещение увеличило потребность в архитекторах, аналитиках, разработчиках 1С, в т.ч. по ЗУП. Все их ищут всеми возможными способами, но не могут найти и не знают, чем же их завлечь к себе!? Давайте разберёмся в этом вопросе!

27.11.2023    5085    biimmap    52    

73

О жизни Сообщество Бесплатно (free)

Прочитав название публикации, мысль возникает о свадьбе... Но речь не об этом!

25.08.2023    2829    biimmap    24    

51
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. marsohod 123 15.02.10 03:00 Сейчас в теме
Максимальную прибыль дает эмиссия национальной валюты, ее вывод на спекулятивный рынок Forex и приобретение доллара, евро, золота. Конечно, если Вы контролируете Центральный Банк.
Ой, что это я сказал...
© Сами Знаете Кто
2. Serj1C 483 15.02.10 07:13 Сейчас в теме
3. Arabo_xv 5 15.02.10 09:36 Сейчас в теме
А где можно посмотреть требования к работе (время работы, объем доступной памяти). В каком виде должен выдаваться ответ?
4. Serj1C 483 15.02.10 10:30 Сейчас в теме
(3) Требования всегда описываются в задании. Время работы - чем меньше тем лучше. Объем памяти строго не ограничен, сдесь большее значение имеет красота решения. Именно в этой задаче ответ выводится в документ, где состав и тип полей жестко указан в конфигурарторе.

Вообще олимпиада по 1С имеет принципиальные оличия от олимпиад по спортивному программированию (количество задач, объемы тестов, экономическая направленность)
5. Arabo_xv 5 15.02.10 11:55 Сейчас в теме
Просто эта задача легко решается жадным алгоритмом. Если не ограничена память то я тогда не могу понять в чём сложность зачи :(. Без ограничений она решение её тривиально.
6. Serj1C 483 15.02.10 12:36 Сейчас в теме
(5) Хорошо. Сколько ты думаешь времени у тебя уйдет с отладкой? 2 часа?
Попробуй засечь время. На олимпиаде есть 4 часа.
И пришли мне плиз решение.

Мне тоже кажется легко. Но однозначного решения если курс покупки <> курсу продажи я не нашел. Это уже интереснее.
7. Arabo_xv 5 15.02.10 13:15 Сейчас в теме
К сожалению я не могу скачать условие задачи (сегодня уже скачивал с инфостарта файл) :(
8. Arabo_xv 5 15.02.10 14:22 Сейчас в теме
Значит так алгоритм решения следующий:
1 - Определяем дату начала и дату конца торговли.
2 - Делаем цикл по дням с даты начала по дата конец - 1.
3 - Если есть закупленная валюта то продаём её.
4 - Получаем срез последних за текушую дату и на следующий день.
5 - Для валют у которых курсы отличаются берём ту валюту по которой вырожение (КурсКонца - КурсНачала) / КурсНачала максимален и на все активы покупаем эту валюту.
После цикла проверяем если всё ещё есть закупленные валюты то продаём их.
Этот алгоритм даёт максимальную прибыль но не оптимален к ресурсам вычислительной техники.

PS реализация займёт не более часа :)
9. Serj1C 483 15.02.10 14:28 Сейчас в теме
(8) логика, конечно, верная, но... Получать срез последних в цикле - не комильфо по стандартам методики разработки 1С. Мне тоже казалось час надо, а получилось полтора как минимум. И потом еще мелкие штришки. Так что зря ты так ) Напиши, сделаем замер производительности.
11. tango 544 15.02.10 14:44 Сейчас в теме
(8)
3. сначала по 5. определяем валюту к покупке, и если имеющаяся валюта не равна по 5., то продаем ее

не забываем, что за каждую транзакцию отчисляем бонус оператору
13. tango 544 15.02.10 15:10 Сейчас в теме
(11) тогда лишнее движение будем учитывать при прочих равных
16. Serj1C 483 15.02.10 16:53 Сейчас в теме
(13) мое решение (уже в каркасной конфигурации) минимум операций делает.
(14) хромать он не будет, он на это заточен, проверь
(15) согласен
17. Arabo_xv 5 15.02.10 17:27 Сейчас в теме
(16) Хех у вас вообще "Не зачёт!" если слегка подкрутить курсы.
Строка №5 Превышен денежный лимит -0,01<>1 015 364,406
Строка №9 Превышен денежный лимит -242,65<>1 034 502,5985
Строка №11 Превышен денежный лимит -242,53<>1 046 427,584
Строка №13 Превышен денежный лимит -242,66<>1 155 906,344
Строка №15 Превышен денежный лимит -242,64<>1 158 187,7232
Строка №17 Превышен денежный лимит -242,61<>1 183 783,0014
Строка №19 Превышен денежный лимит -242,58<>1 282 827,7332
Свой решение я написал за 38 минут + до этого минут 20 потратил на ознакомление с задачей. Работает она в 2-3 раза медленнее, но даёт максимальный результат и не имеет ошибок округления.
18. Serj1C 483 15.02.10 18:18 Сейчас в теме
(17) Любопытно! Поделишься подкрученными курсами и своим решением?
19. Arabo_xv 5 15.02.10 18:33 Сейчас в теме
20. Serj1C 483 15.02.10 18:58 Сейчас в теме
(19) Хорошая попытка. В 7й и 8й строчке на лицо переполнение Количества.
Если увеличить длину реквизита документа, то тот же алгоритм дает 47.42% прироста при соблюдении всех описанных выше условий.

Ваше решение в студию :)
21. Arabo_xv 5 15.02.10 19:08 Сейчас в теме
(20) А разве не на вас лежит ответственность за контролем переполнения? В условии сказанно что вы не можете исползовать больше чем у вас есть средств. Дело в том что вы даже не пытаетесь избежать ошибки округления а значит всегда есть исходные данные когда у вас будет ошибка. Моё решение http://depositfiles.com/files/oa8oxkf7f пароль 123456.
PS Исходные данные я поменял именно из-за того что заметил в вашем решени перерасход средств.
22. Serj1C 483 15.02.10 19:22 Сейчас в теме
(21) Мне понравилось. Хоть и медленней, но это хорошее решение! Плюс.

Если Вы еще студент, очень рекомендую зарегистрироваться на сайте Финансовой Академии (http://fa-kit.ru/) и участвовать хотя бы в заочном туре, у вас все шансы на победу! А если не студент, то можно будет нам вне конкурса посоревноваться.

Было оч. приятно дискутировать!
15. Arabo_xv 5 15.02.10 15:19 Сейчас в теме
(11) Картину это не меняет. Это меняет лишь количество операций, а не прибыль.
10. Arabo_xv 5 15.02.10 14:42 Сейчас в теме
В условиях сказанно что победит тот кто получит максимальную прибыл и только в случае если прибыль будет одинаковая будут оценивать другие критерии.
12. Serj1C 483 15.02.10 15:07 Сейчас в теме
(10) думаю, что итоговый навар у нас получится одинаковый
(11) в условиях задачи про коммисию ничего не сказано
14. Arabo_xv 5 15.02.10 15:17 Сейчас в теме
(12) Ваш алгоритм будет хромать если курсы не каждым днём вносить. В моём случае я всегда получаю максимальную прибыль.
23. Arabo_xv 5 15.02.10 19:27 Сейчас в теме
Уже давно не студент :) Посмотрим если будет на работе возможность буду участвовать.
24. vlad3190 17.02.10 15:41 Сейчас в теме
Нужно взять вторую производную, и там где точки перегиба - покупать или же продавать, в зависимости от того, на какой знак меняется.
25. Serj1C 483 17.02.10 17:11 Сейчас в теме
(24) Мало себе это представляю.
26. Pavel_Vladivostok 58 20.04.12 07:29 Сейчас в теме
Я что-то не понял в чем вообще сложность задачи, если прогноз по курсам торгуемых активов уже есть то можно рассчитать прибыльность потенциальных сделок по целям этих прогнозов, и если известно сколько денег на управляемых брокером счетах, можно действительно одним запросом выдать что и в каком объеме покупать и сколько держать позиции.
детский сад какой-то а не олимпиада.
28. Serj1C 483 20.04.12 07:39 Сейчас в теме
(26) При всей простоте задачи ни один студент 4го курса не смог ее решить и выйти во второй тур. Было печально.

Вот кстати, задание олимпиады этого года http://fa-kit.ru/main_dsp.php?top_id=22317
27. Pavel_Vladivostok 58 20.04.12 07:31 Сейчас в теме
Кстати 1С очень плохо подходит для автоматизации финансового сектора, т.к. очееееееень медленно все выходит.
29. Irwin 558 10.03.16 16:36 Сейчас в теме
У кого-нибудь есть финальное задание 2008 года?
30. Serj1C 483 10.03.16 19:46 Сейчас в теме
(29) Irwin, на официальном сайте организатора - http://fa-kit.ru/main_dsp.php?top_id=3730
Оставьте свое сообщение