LINUX.ORG.RU

Триумф России на ACM ICPC

 ,


0

0

В Канаде в ночь на 10 апреля завершился командный чемпионат мира по программированию. Он ежегодно проводится корпорацией IBM под эгидой профессиональной ассоциации ACM.

Блестяще выступили наши команды: 2 золотые, 1 серебряная и 2 бронзовые медали. Чемпионом мира и Европы 2008 г. стала команда СПбГУ ИТМО (С.-Петербургский университет информационных технологий, механики и оптики) в составе Дмитрия Абдрашитова, Дмитрия Паращенко и Фёдора Царёва! Из российских команд золотую медаль также получила команда Ижевского ГТУ. Серебряная медаль у команды МГУ. Бронзовые медали у команд Петрозаводского гос. университета и СПбГУ.

Участники в течение 5 часов должны были решить 11 задач. Каждая команда из трех человек имела в своем распоряжении компьютер с установленным Fedora Core 6 Linux; компиляторы Java (version 1.6) и C/C++ (GCC 4.1.2); IDE Java - Eclipse 3.3.1, C/C++ - CDT 4.0.1 under Eclipse 3.3.1.

>>> Подробности

anonymous

Проверено: anonymous_incognito ()
Ответ на: комментарий от anonymous

> Самое главное - никакое проектирование олимпиадникам не доверять. Сама концепция олимпиад поощряет написание грязного, но быстрого кода. Ни о какой красоте-аккуратности и ни о каком повторном использовании речи не идёт.

С какого это бодуна _проектировщик_ должен писать _код_?

annoynymous ★★
()
Ответ на: комментарий от anonymous

> Это не врите. Структура реальности такова, что сложные математические задачи составляют не больше 1% от всего создаваемого кода. Соответственно, такого олимпиадника держать оправданно только в конторе на 100 и больше программистов, специально для таких сложных математических задач. Более приземлённые вещи, вроде гуёв или драйверов, этим людям доверять нельзя, как показывает практика.

совершенно логично, что _много_ профессионалов в одном месте не нужно. Никто не говорит, что всех кодеров нужно заменять олимпиадниками.

annoynymous ★★
()
Ответ на: комментарий от VladimirP

питерцы - единственные , кто решил 8 задач
а где посмотреть , кто какие задачи решил ?

kto_tama ★★★★★
()

Есть отличная фраза, которая характеризует предметные олимпиады:

«олимпиады по предметам — тот же бег в мешках: побеждает не тот, кто лучше бегает, а тот, кто лучше бегает в мешке».

Помимо ACM и прочих олимпиад есть и более приближенные к реальности мероприятия: Google Summer of Code или Intel International Science and Engineering Fair ( http://sciserv.org/isef/ ), например.

annoynymous ★★
()
Ответ на: комментарий от anonymous

> знали бы вы как в универе кичатся каждый год этими победами.....

А вы им sicp и носом, носом их в нее тыкайте.

anonymous
()
Ответ на: комментарий от Legioner

> Вообще то по профилю должно быть понятно, что я из Астаны (столица Казахстана :) )

С каких пор казачья станица Акмолинская обозвалась астаной?

anonymous
()
Ответ на: комментарий от r

> К стати а че никто за реверсию хафмана (problem E) не брался? Почему ни одна команда даже не пыталась решить задачь С,D,E и почти никто H? Выпадают из каких-то шаблонов?

Элементарно, Ватсон! Они минимизировали риск. Зачем им браться за задачу на которую они могли потратить слишком много времени?

anonymous
()
Ответ на: комментарий от annoynymous

> С какого это бодуна _проектировщик_ должен писать _код_?

Ещё как должен, лол. Учитесь у опенсорсных проектов, бесенята. Exploratory programming и т. д. А ты думал, только UML рисовать и на обезьянок покрикивать? Верный путь к анальной деградации.

anonymous
()
Ответ на: комментарий от anonymous

> Ещё гордился, что "другие умеют только готовыми библиотеками пользоваться, а я что угодно могу своими руками сделать". То есть, вместо того, чтобы использовать для факторизации матриц одну из тысячи готовых библиотек, писал какое-нибудь разложение Холецкого на коленке.

Молодец! Ценный кадр! Конечно, в практической работе ему пришлось бы использовать готовые библиотеки, но я бы на работу взял его, а не тебя.

anonymous
()
Ответ на: комментарий от anonymous

> Структура реальности такова, что сложные математические задачи составляют не больше 1% от всего создаваемого кода.

Ты забыл сказать, что без этих 1% остальные 99% можно выкидывать на помойку.

anonymous
()
Ответ на: комментарий от anonymous

Просто я еще в этой теме не отвечал ;).

Замечания по поводу финала:

1. Официальные тесты никогда не выкладываются! Ограничения по времени так же точно не известны. В россии некоторые тренеры команд пишут для задач тесты, чекеры и ограничения - чтобы другие могли на задачах финалах тренироваться. При этом, ограничения обычно ужесточаются - питон пройдет только на (обычно простых) задачах, где авторское решение занимает доли секунды, поскольку меньше секунды тайм лимит не делают.

2. На финале ни то что питона, там и паскаля уже нет. А все потому, что для настройки паскаля и написания авторских решений у них нет хорошо знающих паскаль программистов + паскаль используют только половина команд из СНГ, что составляет не больше десятка процентов (а уж ради 1% лиспа, хаскеля или питона уж точно никто не будет заморачиваться). К тому же, на финале используется одна из худших тестирующих систем. Не удивлюсь, если никаких языковых плагинов там нет и быть не может.

В российских же тестирующих системах дополнительно поддерживается паскаль, а в соревнованиях открытого кубка (если вы студент, то еще не поздно присоединится к соревнованиям следующего года) еще и питон, c# (mono), perl и fortran (бугога).

3. На компьютерах кроме ПО указанного в новости, браузера и проги для посылки решений почти ничего нет. Даже mc не установлен. Как результат, пользоваться системой очень не удобно.

4. Вот попала бы наша команда МГУ в четверку - был бы успех (и халявный ноутбук от ibm). А так - обычный результат. В прочем, в свое время мы заняли лишь 9 место.

halyavin
()
Ответ на: комментарий от anonymous

HINT: заботать по книжке алгоритм разложения Холецкого (а он очень простой) != уметь создавать новые алгоритмы.

anonymous
()
Ответ на: комментарий от Legioner

> Давно уже, википедию почитай.

Дауж, ненавижу националистов.

anonymous
()
Ответ на: комментарий от anonymous

А вот знать про Холецкого, но не знать про LAPACK и GSL - верный признак однобоко развитой личности.

anonymous
()
Ответ на: комментарий от teddybear

> Ну, не сильно-то и кичатся... Статейку в газету напишут, да плакатик на первом, у главной лестницы... Шариков и хлопушек нет =)

На моей памяти ещё ни разу не писали как есть. Когда первый раз заняли 3-е место, в плакате было написано "Золотая медаль" (в рассчёте на то, что 99% поймут это как 1-е место, а формально лжи и нету).

Когда первый раз заняли 1-е место зачем-то подписали, что 1-е из 6 тысяч с гаком комманд, хотя в финале было меньше сотни, а 6 тысяч - это было число заявок на участие (кто не знает, заявку могут подать любые три человека, даже если они вообще не умеют программировать).

Это и называется кичиться. И вообще, ИТМО - совок совком. А ребят жалко, их действительно натаскивают на этот класс задач. Спасает то, что они сами с головой и сами учатся. Но это общая проблема ИТМО - институт не плох как место для общения умных людей, а всё что касается образовательного процесса, организации чего бы то ни было - всё только мешает, пользя отрицательная.

// выпускник ИТМО

voronaam ★★
()
Ответ на: комментарий от anonymous

> HINT: заботать по книжке алгоритм разложения Холецкого (а он очень простой) != уметь создавать новые алгоритмы.

Даже этого мало кто умеет, про новые алгоритмы я вообще молчу :(

anonymous
()
Ответ на: комментарий от voronaam

дополнение: поздравления всем победителям. Да и вообще всем людям, которые к чему-то стремятся.

voronaam ★★
()
Ответ на: комментарий от voronaam

>кто не знает, заявку могут подать любые три человека, даже если они вообще не умеют программировать

4.2.

Подать заявку может только ВУЗ, причем ограничения на количество команд от вуза довольно строгие и зависят от предыдущих достижений вуза. Ограничения на состав команды, кстати, тоже есть.

>огда первый раз заняли 3-е место, в плакате было написано "Золотая медаль"

В общем, не понимаю, в чем претензия. Ребята ДЕЙСТВИТЕЛЬНО получили золотую медаль...

>Когда первый раз заняли 1-е место зачем-то подписали, что 1-е из 6 тысяч с гаком комманд, хотя в финале было меньше сотни, а 6 тысяч - это было число заявок на участие

Ну, когда футбольные команды проходят плей-офф, то никто не говорит, что победитель выиграл у ОДНОЙ команды...

ASterikS
()
Ответ на: комментарий от anonymous

>А вот знать про Холецкого, но не знать про LAPACK и GSL - верный признак однобоко развитой личности.

Знание библиотеки в задачах линейной алгебры бесполезно, без знания границ применимости алгоритмов (которые тесно связаны с его устройством). А это - чистая и отнюдь не простая математика.

halyavin
()
Ответ на: комментарий от anonymous

Шутишь? Это шко^Wпрограмма любого нормального мехмата. Знать надо, где искать программистов, лол.

anonymous
()
Ответ на: комментарий от halyavin

> Знание библиотеки в задачах линейной алгебры бесполезно, без знания границ применимости алгоритмов (которые тесно связаны с его устройством). А это - чистая и отнюдь не простая математика.

Демагог, лол. Я могу и обратное сказать: знание линейной алгебры бесполезно без знания инструментов. Если каждый будет любую ерунду писать с нуля вместо того, чтобы использовать библиотеки, никто ничего серьёзного не напишет. Собственно, это не только к алгебре относится. Для любого программиста умение понимать и использовать чужой код в десять раз важнее, чем умение писать свой. Можешь спорить, но это жизнь.

anonymous
()
Ответ на: комментарий от ASterikS

>>огда первый раз заняли 3-е место, в плакате было написано "Золотая медаль"

> В общем, не понимаю, в чем претензия. Ребята ДЕЙСТВИТЕЛЬНО получили золотую медаль...

Дело в том, что про 3-е место написано-то не было. Я же написал "формально лжи не было", а была подача информации не так, как есть.

> Ну, когда футбольные команды проходят плей-офф, то никто не говорит, что победитель выиграл у ОДНОЙ команды...

Обычно вообще не пишут подобную цифру, потому что считать можно по-разному. И ИТМО в своих плакатиках не писал ровно до того момента, когда действительно выиграли всё и приукрашать, казалось бы нечего, и вот тогда поражённый советской моделью агитации ум и придумал приписку про кол-во участников.

Проясню свою позицию: ребята молодцы, ИТМО - отстой. Желаю хорошим ребятам чтобы отстойный ВУЗ их не испортил. В ИТМО есть единичные хорошие люди и общение с ними надо ценить. И держаться подальше от Васильева и иже с ним.

voronaam ★★
()
Ответ на: комментарий от ASterikS

>Подать заявку может только ВУЗ, причем ограничения на количество >команд от вуза довольно строгие и зависят от предыдущих достижений >вуза. Ограничения на состав команды, кстати, тоже есть.

ВУЗ может ничего не знать об ACM, но его команды тем не менее могут в нем участвовать. Просто эта заявка ничего не значит - чтобы попасть на финал нужно пройти отборочные этапы, у которых своя, не зависимая регистрация, которую уже контролируют их организаторы, знакомые со всеми представителями ВУЗ'ов (никакой должности ACM-организатора в универах ведь нет - в каждом ВУЗ'e свой преподаватель-энтузиаст).

halyavin
()
Ответ на: комментарий от anonymous

> Я могу и обратное сказать: знание линейной алгебры бесполезно без знания инструментов.

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

anonymous
()
Ответ на: комментарий от halyavin

>ВУЗ может ничего не знать об ACM, но его команды тем не менее могут в нем участвовать. Просто эта заявка ничего не значит - чтобы попасть на финал нужно пройти отборочные этапы, у которых своя, не зависимая регистрация, которую уже контролируют их организаторы, знакомые со всеми представителями ВУЗ'ов (никакой должности ACM-организатора в универах ведь нет - в каждом ВУЗ'e свой преподаватель-энтузиаст).

Согласен про преподавателя-энтузиаста, но если команда не относится к вузу или не выполняет всех поставленных ограничений, то в финале она участвовать не сможет... Да и про полуфинал есть сомнения. А значит, если такая команда и участвует в 1/4, то вне конкурса

ASterikS
()
Ответ на: комментарий от ASterikS

И ещё от одного хочу предостеречь. Ни в коем случае нельзя распространять эту победу на весь ВУЗ. Выиграли конкретные ребята и о качестве образования в ВУЗе это ничего не говорит.

Поясню на примере ИТМО. К внутриинститутским отборочным соревнованиям допускаются только студенты нескольких избранных кафедр. Студент с оптического факультета, даже если он занял 4-е место в институтской олимпиаде по математике, не будет даже *допущен* к участию в отборочных соревнованиях. Ни сам, ни в составе команды. Проверял это лично.

voronaam ★★
()
Ответ на: комментарий от anonymous

>Шутишь? Это шко^Wпрограмма любого нормального мехмата. Знать надо, где искать программистов, лол.

Ну так девиз студентов - сдал и забыл. +линейная алгебра и алгоритмы в линейной алгебре - это два разных предмета и второй сколько-нибудь подробно проходится редко.

halyavin
()
Ответ на: комментарий от anonymous

>Мне всегда интересно было, такие высказывания серьезны, или это очередная ЛОРовская традиция? Соревнования по бесполезным концептуальным язычками типа lisp, scheme и прочим brainfuck несколько в другой стороне.

Дурила, с такой точки зрения это соревнование по решению бесполезных концептуальных задачек. Пусть лучше сайт на время забыдлокодят на пыхпыхе или форму нарисуют на жабе, да? Это же намного ближе к твоей суровой ежидневной быдлокодерской реальности.

Sidrian
()
Ответ на: комментарий от voronaam

>И ещё от одного хочу предостеречь.

Спасибо, не надо. У нас в вузе все еще интереснее: команды составляют без отбора. Из тех, кто еще со школы участвовал в олимпиадах. Причем основной критерий меня поражает: чем больше дипломов получил будучи школьником, тем лучше выступит на ACM.

ASterikS
()
Ответ на: комментарий от voronaam

Похоже на бред и клевету. Кстати, какое отношение институтская олимпиада по математике имеет отношение к командным олимпиадам по программированию? Чтобы в них учавствовать нужна как минимум команда и пройти отборочный тур в универе.

anonymous
()
Ответ на: комментарий от anonymous

>Демагог, лол. Я могу и обратное сказать: знание линейной алгебры >бесполезно без знания инструментов. Если каждый будет любую ерунду >писать с нуля вместо того, чтобы использовать библиотеки, никто >ничего серьёзного не напишет. Собственно, это не только к алгебре >относится. Для любого программиста умение понимать и использовать >чужой код в десять раз важнее, чем умение писать свой. Можешь >спорить, но это жизнь.

Линейная алгебра в данном случае ведет себя иначе. В ней слишком много алгоритмов решения в сущности одной и той же задачи. Из-за это нужный частенько не находится и его нужно писать самому.

Например, где бы раздобыть библиотеку решения системы линейных уравнений над Z_2 с помощью видеокарты (матрица плотная и очень большая)? с помощью кластера приставок ps3? А еще хочется выполнять in-place приведение к треугольному виду над кольцом Z_2^n, при использовании битового представления, поскольку иначе матрица не помещается в память. Не подскажите вызов из библиотеки?

halyavin
()
Ответ на: комментарий от halyavin

> Ну так девиз студентов - сдал и забыл. +линейная алгебра и алгоритмы в линейной алгебре - это два разных предмета и второй сколько-нибудь подробно проходится редко.

Главное - знать, где искать. Собственно, только этому и учат в университетах - самостоятельно искать нужную информацию. Я, естественно, не помню, как там делается разложение Холецкого или какое-нибудь сингулярное разложение, но я знаю, что это такое, откуда оно взялось, зачем оно нужно, и умею пользоваться гуглем и википедией. А помнить назубок детали реализации алгоритмов - чистой воды задротство и верный путь к анальной шизофрении, сторонитесь таких людей.

dark_mikhail
()
Ответ на: комментарий от anonymous

> Похоже на бред и клевету.

Это мой личный опыт.

> Кстати, какое отношение институтская олимпиада по математике имеет отношение к командным олимпиадам по программированию?

Просто иллюстрация, чтобы усилить впечатление.

> Чтобы в них учавствовать нужна как минимум команда и пройти отборочный тур в универе.

Внимательно читайте на что отвечаете. Наша команда не была допущена до *отборочного тура в универе*, который в ИМТО, кстати, не как одно соревнование, а как постоянные занятия по субботам. То есть не смог учавствовать в ACM, потому что не смог учавствовать в отборочном туре института, потому что учился не на той кафедре. Как и вся моя команда. Все сейчас вполне успешно работают программистами.

Может и к лучшему, что в ИТМО такой совок :)

voronaam ★★
()
Ответ на: комментарий от ASterikS

У нас так же формируются, но в отборочных могут принимать участие все (не все, правда, вовремя читают объявления) и призеры проходят дальше. "Перетусовка" проходит для команд, занявшие граничные места - участие команды в 1/4, 1/2 стоит ведь университету денег.... и тут уже решает Руководство.

Как вариант, можно учавствовать под флагом соседнего вуза :)

anonymous
()
Ответ на: комментарий от php-coder

>Отлично! Рад за нашу команду и за страну! Не подкачали!

Это настоящие программеры. Они для того, чтобы люди знали разницу между профессиональным программером и долбопсихокодеромсемушиным. Тебе даже до _их_ уровня никогда не дотянуться. Поэтому скачешь и лыбишься на ЛОРе. ;)

--

А что ты ещё умеешь, говорящая обезьяна пых? Покажи ;)

anonymous
()

Не читал, но одобряю! :)

fractaler ★★★★★
()
Ответ на: комментарий от dark_mikhail

>А помнить назубок детали реализации алгоритмов - чистой воды >задротство и верный путь к анальной шизофрении, сторонитесь таких >людей.

Помнить нужно ровно столько, сколько достаточно для вывода всего остального за разумное время. Вы, похоже, с этой задачей справляетесь, с чем я вас и поздравляю. Вполне возможно, вам стоит попробовать поучаствовать в on-line олимпиадах по программированию. За одним и в скорости гугления потренируешься, а там глядишь и википедию пополнишь - свежий взгляд новичков всегда полезен.

halyavin
()
Ответ на: комментарий от anonymous

>Как вариант, можно учавствовать под флагом соседнего вуза :)

Ну ни себе чего?! :)

Ни за что бы не стал выступать за другой вуз... А вдруг выиграю? :)

ASterikS
()
Ответ на: комментарий от anonymous

>> Ещё гордился, что "другие умеют только готовыми библиотеками пользоваться, а я что угодно могу своими руками сделать". То есть, вместо того, чтобы использовать для факторизации матриц одну из тысячи готовых библиотек, писал какое-нибудь разложение Холецкого на коленке.

>Молодец! Ценный кадр! Конечно, в практической работе ему пришлось бы использовать готовые библиотеки, но я бы на работу взял его, а не тебя.

Ты бы его взял на должность ананимного аналитика ЛОРа? Думаю он об этом просто мечтает...

Sidrian
()
Ответ на: комментарий от dark_mikhail

>Отличная фантазия. Теперь придумай, зачем это надо.

Мне это было надо для поиска полиномиальных соотношений между булевыми переменными, при условии что задано несколько подходящих наборов входных данных. Эти полиномиальные соотношения могли бы помочь в поиске булевых функций из одного класса (пока ни одного примера функции из этого класса не найдено), которые обладают экстремальными характеристиками, полезными в криптографии. А это все в свою очередь нужно для защиты кандидатской диссертации.

halyavin
()
Ответ на: комментарий от dark_mikhail

> Отличная фантазия. Теперь придумай, зачем это надо.

Элементарно, Ватсон! Чтоб быстрее посчитать.

anonymous
()

Вставлю 5 копеек. В олимпиадах по программированию, к счастью, не участвовал, зато участвовал в олимпиадах по химии среди школьников, убивал кучу времени на зубрёжку и прорешивание олимпиадных сборников, и занимал неплохие места. В результате легко и по инерции попал в университет и стал там изучать настоящую взрослую химию. Внезапно: настоящая взрослая химия к олимпиадной никакого отношения не имеет. Те абсурдные задачи, которые бывают на олимпиадах, с искусственно осложнёнными условиями, в реальной жизни никогда не возникают. Те цепочки реакций, которые люди пишут на олимпиадах, в реальной жизни вряд ли кто-то будет осуществлять. И даже практические туры начисто лишены смысла, даже на вузовских олимпиадах. На олимпиаде обеспечить такую ораву одинаковой хорошей посудой нереально, а часто даже вытяжных шкафов на всех не хватает, приходится тесниться по двое, а времени редко даётся больше 5 часов. В результате любой элементарный синтез, который в нормальных лабораторных условиях делается легко и непринуждённо, превращается в каторгу. Аналитические же задачки с пробирками и вовсе лишены смысла - в реальности неизвестные вещества первым делом отдают в группу спектроскопии, а на олимпиаде, понятно, никто тебя к хромато-масс-спектрометру за n миллионов баксов не подпустит. В итоге, проработав в реальных лабораториях несколько лет, я обнаружил, что все годы, убитые на олимпиадные задачки потрачены зря.

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

anonymous
()

Олимпиады к реальной жизни имеют такое же отношение, как спортивные единоборства к боевым. Удивительно, но даже матёрые боксёры пасуют, когда им бьют по яйцам.

anonymous
()
Ответ на: комментарий от anonymous

Зачем хаскель-шмаскель для олимпиадных задач? Многие из них вообще порой на бумажке решить можно, и решение - одно единственное число. Качество решения от языка не должно зависеть, там алгоритмы простые (в плане реализации), сложность в нетривиальности подходов к решению.

А язык - да хоть бейсик, и не VB, а тот, что с номерами строк и goto.

anonymous
()
Ответ на: комментарий от anonymous

> Ещё как должен, лол. Учитесь у опенсорсных проектов, бесенята.

К идиотологу, быдло. В стране эльфов будешь опыт у опеньсорца перенимать. Если бы ты в реальной жизни работал в реальной компании, то такие глупости не говорил.

> Exploratory programming и т. д. А ты думал, только UML рисовать и на обезьянок покрикивать? Верный путь к анальной деградации.

Ещё раз для тупых: «Проектировщик кодированием не занимается». Он должен _уметь_ программировать, но его exploratoring (ты, наверное, долго искал, какое бы слово «умное» воткнуть) исследования мало отношения имеют к конечному коду.

annoynymous ★★
()
Ответ на: комментарий от stave

Для удобства организации. Какая на хрен разница, на каком языке задачи решать? Я бы на их месте вообще бейсиком бы ограничил выбор языков.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.