Все игры
Обсуждения
Сортировать: по обновлениям | по дате | по рейтингу Отображать записи: Полный текст | Заголовки
Paul Komkoff, 09-04-2006 22:59 (ссылка)

Техасская деревня

Чем реально напрягает Техас - отсутствием нормального интернета. Интернет везде за деньги и работает еле-еле. Так что мы испытываем некоторые трудности с выкладыванием фотографий, обновлением блога, звонками на родину, и наблюдением за чемпионатом.

А в остальном у нас всё хорошо! Участники вчера заказали 3 пиццы, а им принесли 4. И каких!

(здесь должна быть фотография)

Paul Komkoff, 18-04-2006 11:50 (ссылка)

Прибыли!

Встреча нас поразила. Телекамеры, фотовспышки, почти как во время закрытия :)

Сегодня в 14:00 в Саратовском госуниверситете состоится пресс-конференция с Чемпионами, на которой (я надеюсь) будут показаны видеофрагменты с церемонии награждения.

(ушёл делать видеофрагменты)

Paul Komkoff, 10-03-2007 22:05 (ссылка)

Добро пожаловать в мини-чемпионат по программированию - 2007!

Чемпионат проводится Саратовским Государственным Университетом при поддержке компании Mail.Ru.

Решениями задач являются исходные тексты программ на одном из следующих языков программирования:
  • Borland Pascal 7.0 (PAS)
  • Borland C/C++ 3.1 (C, CPP)
  • Borland Delphi 7 (DPR)
  • Microsoft Visual Studio .NET 2005 C++ (CXX)
  • Java - J2SE 1.5 (JAVA)
  • Python 2.5 (PY)


Обсуждение правил проходит в этой теме

ещё!  ]

Paul Komkoff, 20-03-2006 23:45 (ссылка)

Java Challenge

На финале IBM в качестве продвижения своих средств разработки на Java устраивает турнир под названием Java Challenge.

Вкратце правила таковы: участникам выдаётся интерфейс родительского класса, говорится, какие методы надо переопределить, и каковы условия выигрыша. После чего выделяется 2 часа времени на написание программы.

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

Мне довелось поучаствовать в этой забаве 1 раз, в 2003 году. В нужное время команду СГУ№3 сопроводили в зал, в котором на следующий день проведут основной тур, и изолировали от остальных членов нашей делегации на следующие 2 часа. В том числе и от меня - ведь я в тот раз был в качестве тренера.
Однако тренерам тоже дали повеселиться. В другом зале была объявлена свободная регистрация команд, и мы с пользователем ralekseenkov@mail.ru, взяв в команду ещё одну девушку из Белоруссии (или из Украины?) засели за компьютер, писать противоестественный интеллект для управления адским гоночным болидом.

Болид умел разгоняться, тормозить, поворачивать, ездить задним ходом. Кроме этого адская машина умела включать неуязвимость, стрелять запасными колёсами, и останавливаться, если у неё кончился керосин.
Так как организаторы собирались устроить гонки, на трассе были checkpointы, которые нужно было посещать по порядку и за которые давали очки. Очки также давали за удачный удар по вражеской машине, за удачное попадание колесом по вражеской машине. Самой вражеской машине от удара становилось плохо, и она теряла какое-то количество керосина.
От надругательств со стороны вражеских машин (а также от последствий своих ударов) спасал вовремя включённый режим неуязвимости, который был сделан очень правдоподобно - на крыше появлялась мигалка и включался спецсигнал. Однако, включённый спецсигнал приводил к удвоенному расходу керосина, и это нужно было учитывать при выборе стратегии поиска заправок, которые присутствовали на трассе.

Все вышеперечисленные апгрейды на машину привели к тому, что вместо мирной гонки получилось адское мочилово. Очевидно, что в данных правилах побеждает та машина, которая сможет продержаться на трассе как можно дольше. При этом ездить по чекпойнтам практически бессмысленно, посколько больше очков давали за банальную драку. В результате в тот противоестественный интеллект, который вымучали мы со Snailом, были заложены следующие гениальные тактические решения:
1. Если остаётся меньше чем полбака керосина - нужно немедленно ехать на ближайшую заправку (по возможности расталкивая все машины, кто не спрятался - я не виноват)
2. Если поблизости находятся враги - немедленно включаем неуязвимость и не выключаем, пока враги не уберутся подальше
3. Если больше заняться нечем - едем к следующему чекпойнту.
Эта поистине гениальная стратегия позволила в неофициальном зачёте машине по имени kg занять четвёртое место. Или третье? Чуть чуть не дотянули :)

А вот с Java Challenge нашей основной команды вышел жестокий облом. Просмотр боёв по классической формуле "хлеба и зрелищ" был совмещён с ужином, смертельные гонки проецировались на большие экраны в большом зале.
До середины мероприятия всё было хорошо, машина наших чемпионов уверенно лидировала, выживая в самых безнадёжных ситуациях, и всерьёз претендовала на новую поршневую Костромского завода "Мотордеталь"медаль.
До тех пор, пока по неизвестной причине организаторы не решили перезапустить чемпионат заново.
Во втором прогоне, результаты которого и пошли в зачёт, машину как будто подменили. Совпадение, скажете вы.

Спонсором боёв без правил в тот раз, как и всегда, выступила компания IBM...

настроение: Грустное

И снова здравствуйте!

Менее года назад мне довелось вести в этом блоге мини-чемпионат Mail.ru. 12 апреля 2006 года я следил за ходом соревнований в Сан-Антонио. А в телефоне хранится смс с одним словом - "Чемпионы!". А вот завтра в составе команды отбываю из родного города по направлению к Токио! Для этого мы готовились с декабря, активно тренировались - командно и лично. Теперь нам остался ровно один контест - 15 марта. Болейте! В)

Paul Komkoff, 12-04-2006 18:42 (ссылка)

Почти онлайн репортаж

Итак, я сижу в киберкафе, которое в этот раз далеко от места поведения соревнований. Но я периодически буду бегать туда-сюда, чтобы поделиться с вами живыми впечатлениями.

Текущее положение команд доступно по этому адресу.

Наша команда начала хорошо, кроме двух задач (B и I) которые сейчас у них решены они должны знать как делать ещё как минимум 2 задачи.

Пойду обратно в La Villita Assembly Hall - поддерживать.

upd: Начало, кстати, задержали минут на 30.

Мини-чемпионат Mail.ru

Еще раз поздравляем команду Саратовского ГУ №2 с ошеломляющей победой!

А для участников мини-чемпионата напоминаем, что решения принимаются до 17 апреля включительно.
Уже пора начинать торопиться - 3 оставшихся дня из 15 - это ровно 1/5, последний час обычного контеста В)

Желаем удачи!

Задача H: Скрудж - нефтяной магнат

Нефтяные месторождения в Берляндии имеют очень небольшие размеры и считаются точками. В Берляндии всего N месторождений, для каждого из которых известны его координаты (x_i, y_i). Скрудж вкладывает немалые деньги в покупку месторождений. Для этого целый день он выкупает прямоугольные участки земли, стороны которых параллельны осям координат. Будучи увлекающейся натурой, Скрудж не замечает, что, покупая очередной участок, часть этого участка (а, возможно, и весь) уже куплена им до этого. Всего он выкупил M участков, для каждого из них известны пары координат противоположных углов (X_1,j , Y_1,j),(X_2,j , Y_2,j). После утомительного рабочего дня Скрудж задался вопросом, сколько же всего нефтяных месторождений находится на его территории. Нефтяное месторождение находится на территории Скруджа, если оно расположено внутри или на границе хотя бы одного из M прямоугольников. Более того, для каждого нефтяного месторождения Скрудж хочет знать количество принадлежащих ему участков, на территории которых оно находится.
Входные данные.
В первой строке входного файла содержится целое число N (1 ≤ N ≤ 100000), где N - количество месторождений. Далее в N строках записаны описания месторождений, заданные своими целочисленными координатами x_i, y_i. Два или более месторождения могут находиться в одной точке. Следующая строка содержит целое число M (1 ≤ M ≤ 100000), где M - количество прямоугольников. Далее в M строках заданы описания прямоугольников четверками целых чисел X_1,j , Y_1,j, X_2,j, Y_2,j. Два или более прямоугольника могут совпадать. Прямоугольники не могут вырождаться в отрезки или точки.
Все координаты во входном файле не превосходят 10^9 по абсолютной величине.
Выходные данные.
Выходной файл должен содержать N строк, i-ая строка должна содержать количество участков, содержащих i-ое месторождение. Месторождения следует нумеровать в соответствии с их порядком во входных данных.
Примеры:
input.txtoutput.txt
Пример #14
0 0
10 0
10 10
0 10
3
0 1 1 0
9 11 11 9
9 -1 100 100
1
1
2
0
Пример #24
0 1
1 0
1 1
0 0
1
0 0 1 1
1
1
1
1

Ограничение времени для 32-х битного компилятора: 5 секунд
Ограничение времени для 16-и битного компилятора: 20 секунд
Ограничение памяти: 64 мегабайта
Входной файл: input.txt
Выходной файл: output.txt

Задача D: Оптимизация программы

Язык программирования Berland Pascal 7.0 очень прост. Каждая его строка содержит один оператор, который является либо оператором присваивания, либо оператором вывода. Оператор присваивания имеет вид:
        <переменная>:=<выражение>;
Оператор вывода имеет вид:
        WRITELN(<выражение>);
Имя переменной всегда состоит из одной строчной буквы латинского алфавита ('A':'Z'), а выражение содержит переменные, знаки бинарных арифметических операций "#", "%", "&", круглые скобки и целочисленные константы. Выражение корректно с точки зрения стандартных математических правил.
Оптимизация программы состоит из двух фаз. Во время первой фазы в программе помечаются все строки, содержащие оператор присваивания вида "<переменная>:=<константа>;". Непомеченные в первой фазе строки подаются на вход оптимизатору. Относительный порядок следования строк при этом сохраняется.
Оператор присваивания может быть убран оптимизатором, если его удаление не влияет на результат вывода программы (следует учитывать, что этот оптимизатор не знает о возможном существовании строк, помеченных в первой фазе). Оптимизатор работает на ранней стадии компиляции и не может пользоваться правилами вычисления "#", "%", "&", а воспринимает их как некоторые абстрактные арифметические операции.
Ваша задача реализовать функциональность оптимизатора. На вход оптимизатору подаются строки программы, не помеченные в первой фазе. Вывод оптимизатора состоит из строк, поданных ему на вход, которые он не может убрать. Изменять выражения, переменные или еще как-то модифицировать программу нельзя.
Входные данные.
В первой строке входного файла содержится натуральное число N (1 ≤ N ≤ 100), где N - это количество строк, поданных на вход оптимизатору. Далее следует N строк, каждая из которых содержит оператор присваивания или оператор вывода. Все строки не содержат никаких лишних символов, комментариев и строго соответствуют описанному выше формату. Их длины не превосходят 32 символа. Входные данные не содержат пробелов. Во входных данных отсутствуют строки вида "<переменная>:=<константа>;", так как они были помечены на первой фазе.
Выходные данные.
Выведите строки программы, удалив все лишние операторы присваивания. Относительный порядок операторов менять нельзя.
Примеры:
input.txtoutput.txt
Пример #15
A:=B;
A:=B#C;
WRITELN(A);
C:=A;
WRITELN(B&2);
A:=B#C;
WRITELN(A);
WRITELN(B&2);
Пример #25
C:=5#1;
A:=X#Y&(Z#A);
A:=A#1;
B:=A&B;
WRITELN(C#A);
C:=5#1;
A:=X#Y&(Z#A);
A:=A#1;
WRITELN(C#A);
Пример #37
A:=B;
WRITELN(A);
A:=B;
WRITELN(A);
Z:=Z;
X:=Y;
WRITELN(Z);
A:=B;
WRITELN(A);
A:=B;
WRITELN(A);
WRITELN(Z);

Ограничение времени: 2 секунды
Ограничение памяти: 64 мегабайта
Входной файл: input.txt
Выходной файл: output.txt

Сан-Антонио, день второй

У меня осталась одна минута, чтобы написать этот пост, потому что через эту самую минуту у нас отключится интернет. На самом деле, я пишу этот пост в третий раз, т.к. имел неосторожность два раза нажать на кнопку "back" на клавиатуре
ibm thinkpada. А интернет все не отключают :)
В Сан-Антонио все замечательно, за исключением того, что очень жарко. Сегодня мы встали в 9 утра (некоторые встали в 7, но я не из их числа). Гуляли по даунтауну, аламо. Катались в центре города на лодке по реке. После обеда (да обеда, собственно, у нас и не было) мы поехали на минивэне, который взяли в рент, за город. Целью нашей поездки был шнифельбах (шницельбух, шнидельбен?:) waterpark resort. В общем, в аквапарк мы ехали, но он оказался закрыт. На обратном пути отведали китайской еды. Самыми вкусными оказались рис и креветки. Остальное даже есть страшно.
В общем, всем спасибо, всем до завтра, скоро будут новые фотки.

Paul Komkoff, 27-02-2007 19:31 (ссылка)

В этом году команда СГУ тоже едет на финал.

Так что я в ближайшее время тут всё переделаю.

Да, а финал в этом году в Японии и на месяц раньше.

настроение: Боевое

Paul Komkoff, 09-04-2006 01:01 (ссылка)

Погуляли



Увеличить
Поездили на арендованной машине, посмотрели на окрестности.


Увеличить

Из этого снимка понятно, что у нас всё хорошо.

Вёл репортаж:


Увеличить

Без заголовка

Сегодня день начался с IBM TechTrek.



Несмотря на то, что многим не понравилось, мне было интересно послушать о новых направлениях в информатике. Выступал Yukihiro "Matz" Matsumoto автор языка Ruby. Очень волновался, но было познавательно.

Можно отметить неуспешные попытки соперников задавить Саратов массой:









Кроме того, состоялась встреча на высшем уровне:



Во второй половине дня мы отправились в парк DisneySea.



Там мы славно погуляли.







Ну а завершили мы день уже традиционно для нашего тренера В) В Суши-баре.



Как обычно после поста В) мы идем спать.

Задача B: Слова

Изучая в школе литературные произведения, Андрей заметил, что некоторые слова встречаются гораздо
чаще, чем другие. Андрея очень заинтересовал вопрос, какие же слова встречаются в тексте чаще всего?


Входной файл:


Во входном файле записан текст. Слова в нем - это последовательности из прописных латинских букв.
Они разделены пробелами, переводами строк или знаками препинания.
В тексте не более 1000 слов, каждое длиной не более 20 символов.


Выходной файл:


Выведите все слова, которые встречаются в тексте в порядке убывания их частоты.
На отдельной строке выведите слово и сколько раз оно встречается в тексте.
Если несколько слов встречаются в тексте одинаковое количество раз, то выведите их в алфавитном порядке (как в словаре).


Пример входного файла:


to be or not to be?


Пример выходного файла:


be 2
to 2
not 1
or 1


Ограничение времени: 2 секунды
Ограничение памяти: 64 мегабайта
Входной файл: input.txt
Выходной файл: output.txt

Paul Komkoff, 30-03-2006 23:54 (ссылка)

План

План наших мероприятий таков.
3 апреля - начало мини-чемпионата по программированию для наших читателей
5 апреля - отъезд делегации СГУ из Саратова в Москву
6 апреля - вылет вышеупомянутой делегации из Москвы в Сан-Антонио через Атланту
6 апреля, вечер по времени Сан-Антонио - мы в Сан-Антонио.
(далее в плане белое пятно, которое мы будем заполнять сообщениями с места событий)
9 апреля - регистрация команд-участников финальных соревнований
10 апреля - открытие соревнований, пробный тур
11 апреля - день Java Challenge
12 апреля - основной тур соревнований, награждение, закрытие
(ещё одно белое пятно)
16 апреля - вылет из Сан-Антонио
17 апреля - мы в Москве
18 апреля - подведение итогов мини-чемпионата мира по программированию для наших читателей.

настроение: Внимательное

Paul Komkoff, 28-03-2007 13:54 (ссылка)

Итоги подведены

Жюри подвело итоги чемпионата и пытается связаться по электронной почте с некоторыми участниками для установления их личности :) Публикация результатов состоится совсем скоро.

Paul Komkoff, 03-04-2006 15:05 (ссылка)

Добро пожаловать в мини-чемпионат по программированию!

Чемпионат проводится Саратовским Государственным Университетом при поддержке компании Mail.Ru.

Решениями задач являются исходные тексты программ на одном из следующих языков программирования:
  • Borland Pascal 7.0 (PAS)
  • Borland C/C++ 3.1 (C, CPP)
  • Borland Delphi 7 (DPR)
  • Microsoft Visual Studio .NET 2003 C++ (CXX)
  • Java - J2SE 1.5 (JAVA)


Обсуждение правил проходит в этой теме

ещё!  ]

настроение: Боевое

Paul Komkoff, 11-03-2007 00:00 (ссылка)

Начало мини-чемпионата

В 0:00 11 марта, как и сообщалось ранее, открылся наш чемпионат. Все регистрации, сделанные до этого момента, недействительны. Добро пожаловать :)

Без заголовка

Ну и напоследок - фото делегации России и бывшего СНГ:



Все, мы идем спать.

PS По возвращении выложу полноразмерную фотографию.

Paul Komkoff, 12-04-2006 06:56 (ссылка)

А завтра, между прочим, ФИНАЛ!

В 17:00 по Московскому времени команды должны уже быть на своих местах и решать задачи. Я попробую завтра устроить онлайновую трансляцию мероприятия. Если повезёт.
Начинайте болеть за нас заранее. Где-то в 16:00 по московскому времени мы должны идти завтракать, и с этого момента поддержка будет просто необходима!

Завтра финал!

Команда СГУ вместе с семьёй директора чемпионата мира:

Увеличить
Слева направо, ряд 1: Marsha Poucher, Melinda Poucher, Bill Poucher, Roman Alekseenkov, Mike Mirzayanov, Igor Kulkin.
Ряд 0: Кто бы это мог быть?

Paul Komkoff, 05-04-2006 10:47 (ссылка)

День отъезда

Сегодня мы садимся в поезд и едем в Москву.
Последние недели были насыщены тренировками (для команды) и просто подготовкой (для всех). Так что сложа руки мы не сидели. Команда готова всех порватьпобедить, а я готов вам об этом рассказать.

А в нашем мини-чемпионате зарегистрировалось уже 16 участников, и кое-кто из них даже решил кое-какие задачи :)

Компиляторы

В дальнейшем появятся задачи, в которых ограничения по времени будут различны для разных компиляторов. Для этого мы разделили все компиляторы на две группы: 16-и битные и 32-х биитные. К 16-и битным мы относим:
  • Borland Pascal 7.0 (PAS)
  • Borland C/C++ 3.1 (C, CPP)

К 32-х битным - соответственно все остальные:
  • Borland Delphi 7 (DPR)
  • Microsoft Visual Studio .NET 2005 C++ (CXX)
  • Java - J2SE 1.5 (JAVA)
  • Python 2.5 (PY)

В этой группе, возможно, есть записи, доступные только её участникам.
Чтобы их читать, Вам нужно вступить в группу