Заочная олимпиада по программированию в ШГПИ - 2010 год

Знаковые события в научной и общественной жизни вуза.

Модератор: xdsl

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение vovan 24 фев 2010, 09:29

во второй задаче 9 тест неправильный output.txt на 219 строке несоответствие(строка в input.txt 637)
Также кое-где в 10 тесте отстутствуют нули
vovan
 
Сообщения: 27
Зарегистрирован: 07 фев 2009, 16:16
Полное имя: Щеколдин Владимир Викторович

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение Vladislav_133 24 фев 2010, 10:01

Оспаривать можно. Мы могли ошибиться. Вечером, я могу предоставить все мои соображения, по оценкам, по которым есть сомнения. Если я ошибся, то результат будет пересмотрен. Теперь, что касается 1-й задачи. Здесь ситуация такая. За нее было предусмотрено всего 2 очка. Поэтому любое не прохождение тестов каралось 0. Это принципиальная позиция. Слишком, на наш взгляд, простая задача. Считать все в массив, провести простые манипуляции и скинуть обратно на диск - не должно было представлять больших трудностей. Кстати, было решение не использующее массив, и очень красивое. Я потом его в другой ветке покажу.
Аватара пользователя
Vladislav_133
Elite
 
Сообщения: 1386
Зарегистрирован: 13 дек 2008, 18:08
Полное имя: П.В.Ю.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение xdsl 24 фев 2010, 11:22

vovan писал(а):во второй задаче 9 тест неправильный output.txt на 219 строке несоответствие(строка в input.txt 637)
Также кое-где в 10 тесте отстутствуют нули

Сегодня проверю. Если окажется действительно так, заново прогоню сквозь эти тесты решения студентов. Это в максимуме +1/-1 балл.
xdsl
 
Сообщения: 1236
Зарегистрирован: 09 дек 2008, 05:16
Откуда: ВЦ ШГПИ
Полное имя: Слинкин Д.А.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение xdsl 24 фев 2010, 12:15

Действительно, ошибка в 9-10 тестах для второй задачи имеет место быть - одиночно стоящие нули "поедаются" программой. Причина проста, было:
Код: Выделить всё
if (trim($value)) $data[]=trim($value); 
стало:
Код: Выделить всё
if (strlen(trim($value))) $data[]=trim($value); 

Резюме: тесты 9-10 будут исправлены, решения перепроверены.
xdsl
 
Сообщения: 1236
Зарегистрирован: 09 дек 2008, 05:16
Откуда: ВЦ ШГПИ
Полное имя: Слинкин Д.А.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение Vladislav_133 24 фев 2010, 13:48

Общее впечатление от олимпиады. Чувства противоречивые. Очередь рад, что было много участников. Но мне кажется, многие участники выступили не напрягаясь. Ну, конечно, если бы призы были более значимыми, скажете вы. Но ведь соревнования реально не имеют отношение к деньгам. Человек
а) Получает удовольствие от интеллектуальной работы и при том хорошей интеллектуальной работы.
б) Человек показывает и прежде всего самому себе, чего он достиг. А вот это уже важнее всяких денег, престижных призов и т.д. Ощутить себя настоящим мастером, наголову (ну хоть на пол-головы) выше окружающих программистов - ну это дорогого стоит. Это считай жизнь удалась.
Аватара пользователя
Vladislav_133
Elite
 
Сообщения: 1386
Зарегистрирован: 13 дек 2008, 18:08
Полное имя: П.В.Ю.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение Vladislav_133 24 фев 2010, 18:16

Уважаемый DD, вот на вскидку два теста, которые ваша программа не проходит
1.
<1>123456123456</ >
<1>123456123456</ >
-2 очка
2.
<1><1>1234567890</></>
0987654321>1<</>
-10 очков

Последнее, как бы перекрывает все остальное. Можно сказать, что тег не реализован полностью.

Вот еще один тест
<1><2 "q""1">12134567890</></>
09876543121>"1""q" 2<</>

Согласитесь, что задача не решена.
Причем, это все операции над одной строкой.
Аватара пользователя
Vladislav_133
Elite
 
Сообщения: 1386
Зарегистрирован: 13 дек 2008, 18:08
Полное имя: П.В.Ю.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение xdsl 24 фев 2010, 18:58

Заменены тесты 9,10 второй задачи, перепроверены работы. Ситуация изменилась только у Усольцева (ШГПИ), его решение теперь верно проходит тест 9 (+0.5 балла). Впрочем на расстановку мест это не повлияло.
xdsl
 
Сообщения: 1236
Зарегистрирован: 09 дек 2008, 05:16
Откуда: ВЦ ШГПИ
Полное имя: Слинкин Д.А.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение LMP 24 фев 2010, 20:06

Обнаружил досадный момент в своём решении первой задачи: ситуация если строка начинается с пробелов, а затем идёт знак препинания, то съедаются все начальные пробелы, и сразу идёт знак препинания. :(
LMP
Elite
 
Сообщения: 49
Зарегистрирован: 26 янв 2009, 22:05
Полное имя: Кобелев Денис

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение Vladislav_133 24 фев 2010, 20:12

1.Удалены лишние пробелы. Другими словами, если между словами имеется n пробелов, то должен остаться только один. В случае, если пробелы стоят в начале строки, то должен остаться один пробел.

2.Если после слова идут несколько пробелов, а потом знак препинания, то пробелы должны быть удалены.

3.Если после знака препинания сразу начинается слово, то между знаком препинанием и словам должен быть вставлен пробел.


Если внимательно прочесть, то в условии есть неопределенность, как раз по этому вопросу. Ошибку засчитывать не будем.
Аватара пользователя
Vladislav_133
Elite
 
Сообщения: 1386
Зарегистрирован: 13 дек 2008, 18:08
Полное имя: П.В.Ю.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение LMP 24 фев 2010, 20:19

Лично для меня при прочтении условия вызвало неопределённость в понимании лишь что делать с пробелами в конце строке, не заострял на этом внимания и просто отбрасывал их. Хотя и оставил закоментированный код в котором если есть пробелы в конце строки, то они заменяются на один.

В случае, если пробелы стоят в начале строки, то должен остаться один пробел.


Здесь не вижу неопределённости, всё чётко и ясно. Но забыл учесть этот момент.
LMP
Elite
 
Сообщения: 49
Зарегистрирован: 26 янв 2009, 22:05
Полное имя: Кобелев Денис

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение Vladislav_133 24 фев 2010, 20:25

Если после слова идут несколько пробелов, а потом знак препинания, то пробелы должны быть удалены.


Вот это можно трактовать в вашу пользу.
Аватара пользователя
Vladislav_133
Elite
 
Сообщения: 1386
Зарегистрирован: 13 дек 2008, 18:08
Полное имя: П.В.Ю.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение [DD] 24 фев 2010, 20:44

мда... не менее обидная ошибка в решении четвёртой задачи заменил изначальное регулярное выражение другим (для оптимизации) и все скрипт вообще не работает...
было
Код: Выделить всё
while(preg_match('/((<1[ \x00-\x07]*)|(<2[ \x00-\x07]*))((.|\n)(?!(<(1|2))))*?<\/[ \x00-\x0F]*>/',$content,$matches))
{
$tag = $matches[0][1];


стало
Код: Выделить всё
while(preg_match('/<(1|2)( |>|\n)((.|\n)(?!(<(1|2))))*?<\/>/',$content,$matches))
{
$tag = $matches[1];


как оказалось первоначальный вариант работал но медленнее... но ведь работал же...
P.S. вот тут досада
мы рождены чтоб сказку сделать кодом
[DD]
Elite
 
Сообщения: 163
Зарегистрирован: 18 мар 2009, 22:18
Откуда: from HELL
Полное имя: Зыков Д.А.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение Vladislav_133 25 фев 2010, 11:57

Отмечу одну особенность данной олимпиады. Мы ничего не говорили по поводу идентичных решений. По этой причине идентичные решения мы оценивали обычным образом. Насколько я понимаю была и совместная работа, было и списывание, но мы на это внимание не обращали. Был даже один курьезный случай. Пришло два решения от двух участников. Почти идентичные. Только вот у одного работает, а у другого нет. Очевидно второй списал (скопировал) у первого не за долго до того, как тот закончит свою работу.
Аватара пользователя
Vladislav_133
Elite
 
Сообщения: 1386
Зарегистрирован: 13 дек 2008, 18:08
Полное имя: П.В.Ю.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение xdsl 25 фев 2010, 13:07

В продолжении темы идентичных решений. Если такое решение обнаруживалось, то мы объединяли дубликантов в группу и рассматривали ее отдельно от участников. Т.е., в гипотетическом варианте, если участник А решил задачи 1,2,3, участник Б - 2,3,4, но решение задачи 3 у обоих участников одинаковы, то мы считали, что у нас не два, а три отдельных участника: А с задачами 1,2, Б с задачами 2,4 и АБ с задачей 3.
Правда все дубликанты решали по одной задачи и нам не удалось в полной мере применить данную схему ;)
xdsl
 
Сообщения: 1236
Зарегистрирован: 09 дек 2008, 05:16
Откуда: ВЦ ШГПИ
Полное имя: Слинкин Д.А.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение xdsl 01 мар 2010, 16:17

xdsl
 
Сообщения: 1236
Зарегистрирован: 09 дек 2008, 05:16
Откуда: ВЦ ШГПИ
Полное имя: Слинкин Д.А.

Re: Заочная олимпиада по программированию в ШГПИ - 2010 год

Сообщение Vladislav_133 01 мар 2010, 16:20

Поздравляю от все души. Хотелось бы встретиться с победителями на очной олимпиаде.
Аватара пользователя
Vladislav_133
Elite
 
Сообщения: 1386
Зарегистрирован: 13 дек 2008, 18:08
Полное имя: П.В.Ю.

Пред.

Вернуться в Конференции и семинары, олимпиады и форумы, выставки и конкурсы в ШГПУ

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10

cron