Привет всем!
Меня зовут Максим Шипко и я являюсь ведущим разработчиком подпроекта Codeforces::Тренировки. В этом блоге вы можете публиковать баги системы, относящиеся к подпроекту, а также ваши пожелания по улучшению его работы. Команда Codeforces приложит максимум усилий для их реализации.
Это сугубо технический блог. Пожалуйста, приводите как можно более конкретную информацию и не устраивайте пространных рассуждений или обмена мнений по подпроекту. Для этого существует специальная тема. Все посты, не относящиеся к теме, будут удаляться без предупреждения.
UPD. В целях предотвращения замусоривания темы выполненные исправления и улучшения в дальнейшем будут удаляться (скрываться). Весь полученный за них вклад, тем не менее, никуда не денется.








Bug request.
Повторяется под Opera 11.60, Mozillа 6.0
В интерактивном календарике, который сейчас используется для установки времени виртуального контеста (и судя по скринам будет использоваться для установки времени тренировки) при выборе месяца в списке вместо "Июля" и "Июня" написано нечто вроде как в сбившейся кодировке.
The techniacal suggestion from my side:
I feel that there should be a Logic and an implentation button on each question which activates after a minimum of say (1 hour and 2 hours) respectively after the problem is opened.Simply because this a gym and I would personally like to train myself on a particular topic (like dp,greedy,graph etc.) and after putting up effort for say (1 hour) and still being unsuccessful ,I would like to know the logic behind the problem and then when I fail to implement ,I would like to know the full solution.What happened today was that I was given a set of questions varying in topics and ,being a newbie I was not able to concentrate on all of them simultaneously.You can call this something like a" virtual coach".I hope I have made myself clear.
BTW thanks for bringing this wonderful idea of Gym
Еще предложения:
По поводу 2: как-то я сдал пару задач на UVA, потом мне еще лет 8 приходили emails, что они что-то пореджаджили :) Видимо, стоит дать возможность тренерам реджаджить все подряд, конечно с предпросмотром того, что реджаджится и в каком количестве. Возможно по-умолчанию будет включена галочка что-то типа “Не перетестировать очень старые попытки”.
Наверное был какой-то временный баг, из-за того, что у хранилища и Codeforces были разные версии либ. Если всплывет еще раз, то будем разбираться.
Хотелось бы максимально полной интеграции с полигоном.
Еще пара вопросов по интерфейсу.
Кнопка "to practice" удаляет участника из результатов соревнования? Можно ей всплывающую подсказку сделать, с объяснением, что она делает?
Прямо сейчас пара человек решает мой контест виртуально. Невозможно понять, какая минута контеста у них в данный момент, и не закончили ли они его уже. Надо бы выделять участвующих в данный момент, с указанием времени, прошедшего со старта - как делается в виртуальных контестах на snarknews.
upd: Как мне уже объяснили, можно нажать на решетку рядом с хендлом виртуального участника и увидеть контест "его глазами". Что ж, тоже круто.
contest.zip с полигона пока не зальется, такое будет. Конечно, лучше допилить (и допилим) интеграцию в 1 клик между Полигоном и Codeforces.
Сделали, но там при нажатии появляется подробный алерт, так что случайно это сделать невозможно.
Если виртуальный контест идет, то решетка заменяется на относительное время участника. По клику на решетку/время можно перейти на ранклист глазами участника, который автоскроллится на нем.
Когда я выбрал сегодня виртуальное участие в тренировке(2011-2012 Waterloo Local Contest, 2 October, 2011) появилась форма регистрации. Там внизу есть поле «Время вирт. старта». Рядом что-то типа джойстика для установки времени. Я нажал центральную кнопочку (я так понял, что эта кнопка устанавливает текущее время). Но я живу в Беларуси, и мое время установилось на час меньше текущего времени в России. Я это проморгал и нажал кнопку регистрации. Решил задачу, послал на 17ой минуте. Но система засчитала эту задачу на 1:17ой минуте. Т.е. получается, что для меня соревнование уже длилось 1 час на момент моего старта. Мне кажется это слегка странным. Вопрос: это баг или фича?
Вообще если ты случайно увидел условия до старта, то, чтобы было честно, можно установить начало контеста на прошедшее время.
Возможно. Но в тогда, мне кажется, следует предупредить пользователя о том, что у него заберут часть времени. Некоторые (как я:)) могут это не заметить.
Теперь есть предупреждение, если начало установлено в прошлое.
после решения задачи нельзя смотреть чужие решения. Это баг или так и планировалось?
upd и было бы хорошо как-то отмечать прорешенные контесты, например, чтобы надпись "виртуальное участие" пропадала
а вообще можно посмотреть код, скопировав ссылку на свое решение, замени id решения, на то решение, которое хочешь посмотреть и решение откроется
P.S. так можно сделать только для решенных задач
Fixed. Рядом с каждой задачей написано какой ввод/вывод.
Среди способов сортировки тренировок есть сортировка по рейтингу. Что это?
@s 2,E,2,2715,TL,10 (последнее число - номер теста)
Валидатор принимает это. Вердикт в мониторе показывается правильно, тест не показывается.
> Было бы неплохо как-нибудь закрывать темы или ссылки на разбор для тех, кто еще не принимал участие в виртуальном соревновании.
А смысл?
UPD Теперь понятно =)
ошибся
Кажется, у тех людей, кто принимал участие в тренировках, нельзя смотреть сабмиты из профиля.
Сравните: http://codeforces.ru/submissions/Egor и http://codeforces.ru/submissions/tourist
Нельзя смотреть в том случае, если на этой странице с посылками есть хотя бы одна посылка в тренировки.
http://codeforces.ru/submissions/Egor и http://codeforces.ru/submissions/Egor/page/2
I'm not sure if this bug is directly related to the Gym, but my submission page (located at http://codeforces.com/submissions/random.johnnyh ) is no longer displaying properly. It should (for example http://codeforces.com/submissions/tourist ), have blue links on the left hand side.
Another (possibly related) bug: Problems that are solved in virtual mode do not show up green on the contest page.
Можно ли каким-нибудь образом выделить (например, фон для них сделать темнее/зеленее/розовее:)) те тренировки, в которых ты уже участвовал? А то каждый раз приходиться всматриваться в названия соревнования и вспоминать решал ты его или нет. Спасибо.
небольшой баг: в английской версии сайта словесные описания 4х и 5ти звездочного контеста совпадают.
Исправлено
Хотелось бы, чтобы
0) При запуске тренировки сразу переходило в интерфейс участника, а не возвращало к списку.
1) Тренировка, уже запущенная на таймер, была помечена (сейчас ее приходится искать линейным поиском)
2) Уже сыгранные тренировки были как-то помечены.
3) Сейчас допускается запуск виртуального участия на тренировку по расписанию, в которой ты участвовал.
-1) после виртуальной тренировки пропадают посылки.
It would be nice if contests that I virtually participated in is highlighted :)
Создал контест при помощи визарда. Там же нажал залить его на Codeforces. Оно загрузило contest.zip в папку sandbox. Затем пошел на сайт и нажал “Обновить соревнование”. Выдало ошибку:
Попробовал залить архив в корень папки с контестом. Получил сообщение о том что у меня нет прав или контест заблокирован. Распаковал у себя на компьютере и залил файлы по отдельности в песочницу. После нажатия на “Обновить соревнование” стало выдавать следующую ошибку:
Apache Tomcat/7.0.19 — Error report
HTTP Status 409 — Can’t get exclusive access to this contest.
type Status report
message Can’t get exclusive access to this contest.
description The request could not be completed due to a conflict with the current state of the resource (Can’t get exclusive access to this contest.).
Apache Tomcat/7.0.19
Сходу неясно, в чём может быть проблема. Попробуем разобраться. Если несложно, предоставьте дополнительную информацию об архиве, например, его общий размер, размер наибольшего файла в нём, количество файлов (хотя бы примерное), есть ли в нём файлы, имена которых содержат русские символы. Возможно, возникает какая-то проблема с распаковкой, контест “лочится” для распаковки и по непонятным причинам потом не “анлочится”. Есть ещё предположение, что распаковка шла очень долго (по каким-то причинам), и, возможно, сейчас всё работает нормально. Попробуйте обновить/залить ещё раз.
Попробовал обновить и залить еще раз — то же самое. Размер архива в запакованном состоянии — 164 МБ, в распакованном — 480 МБ. Самый большой файл в нем имеет размер 29.4 МБ. Всего файлов в архиве 1421. Файлов с русскими буквами в имени в нем нет.
Сейчас установлено ограничение 25 МБ на размер одного файла в архиве. Похоже проблема именно в этом. Я увеличил его в коде до 64 МБ, но технической возможности обновить приложение у меня нет. Ждём, пока Майк Мирзаянов не вернётся из поездки (скорее всего, завтра).
Все еще не работает. Архив сам не распаковывается, а контест залочен.
Да, кое что не работает, разбираюсь.
Здравствуйте.
Спасибо, очень понравилось решение для сыгранных тренировок.
Маленькое предложение — дописать к “решено 5” сколько задач было всего, например, “решено 5/5”, “решено 8/10”. Это будет очень удобно для дорешивания. Можно, также, помечать более светлым цветом полностью решенные тренировки.
Как-то так? Кроме того как решенные теперь стали учитываться задачи, которые были решены в другом дивизионе/контесте (а задачи те же).
Да, просто отлично, спасибо!
Можно ли каким-либо образом исключить задачу из тренировки после того, как по ней были сабмиты? Если да, то как?
Не удаётся подключиться по FTP, например, в тренировку http://codeforces.ru/gym/100035 (ВКОШП ’03). Far Manager говорит "“Windows socket error”, WSAECONNREFUSED“. Также недавние ошибки тестирования в этой (и других) тренировоках с подстрокой ”Server returned HTTP response code: 502 for URL:" подсказывают, что это не только с моим компьютером/провайдером, но даже тестер не может загрузить задачу.
What happens? I try to create a new one in Codeforces::Gym, and press “Codeforces Contest Wizard”, it says that “Illegal GYM contest ID”…
Fixed.