Блог пользователя kuviman

Автор kuviman, история, 9 лет назад, По-русски

Привет!

Работа на Codeforces никогда не стоит на месте, и вот пришло время рассказать вам о последних изменениях, ранее не упоминавшихся.

Testlib

  • testlib переехал на GitHub, выпущена новая версия 0.9.9 с поддержкой C++11. Добавлены генераторы двудольных графов, корневых и простых деревьев.

Polygon

  • Добавлена базовая поддержка групп тестов. Теперь вы можете для каждого теста указать его группу, запускать invocations по группам, добавлены строки с summary по группам на странице просмотра invocation'а. Если для теста указана группа, она появится в дескрипторе задачи (например <test cmd="gen 1 2" group="testGroup" method="generated"/>). Эта функциональность может оказаться полезной при подготовке задач для школьных олимпиад.
  • Добавлена возможность просмотра условий и валидатора задачи/контеста на одной странице. Это значительно упрощает нахождение ошибок в переводах и валидаторе (раньше для этого нужно было открывать их в разных вкладках и постоянно переключаться между ними, что не очень удобно). На странице просмотра условий добавлена ссылка "Review":

    На странице контеста соответствующая ссылка находится на боковой панели:

Codeforces

  • Теперь пропустить важное сообщение во время раунда стало еще сложнее — сообщения дополнительно показываются с использованием Notification API.
  • Исправлен баг в API: в методе contest.hacks были перепутаны defender и hacker.
  • Исправлен баг со сбрасыванием фильтра статуса. Такое иногда возникало когда запрос уходил на другой сервер Codeforces.
  • Исправлен баг с переполнением local storage. Если у вас вдруг переполнялся local storage, нужно было выполнить localStorage.clear(); в консоли браузера. Теперь Codeforces использует local storage аккуратнее.
  • При взломе задачи теперь подсвечивается синтаксис:
  • При просмотре посылки теперь показываются невидимые символы, так как раньше иногда было непонятно почему приходит WA:
Было Стало
  • Вам больше не требуется загружать изображения на сторонние сайты, теперь вы можете сделать это сразу при редактировании поста. Сразу под содержимым поста вы можете выбрать несколько изображений, для каждого из них сгенерируется ссылка, которую нужно будет использовать для вставки в текст:
  • Улучшена возможность категоризации постов, в частности важные материалы (документация, правила и проч.) Codeforces скоро не нужно будет искать в блогах, они будут структурировано доступны на специальной странице.
  • Добавлена возможность дать права на редактирование поста списку пользователей, пока такая возможность будет доступна списку авторитетных пользователей, которые смогут самостоятельно вносить правки в посты с документацией, туториалами и подобными материалами.
  • Улучшена проверка генераторов на устойчивость: напоминаем, что генераторы при взломах нужно писать таким образом, чтобы при каждом запуске они выдавали один и тот же input, теперь это проверяется более надежно. Не инициализируйте генераторы случайных чисел в генераторах текущим временем!
  • Добавлена возможность просмотра истории правок у поста. Историю можно сделать доступной либо для всех пользователей, либо только для редакторов. По умолчанию для новых постов она будет доступна всем. Если вы разрешаете просмотр истории, то при изменении текста вы сможете опубликовать автокомментарий со ссылками на старую версию, новую версию, а также на просмотр изменений.
  • Теперь те участники, кто не участвовал в рейтинговых раундах более 6 месяцев удаляются из рейтинга. На них всё еще можно посмотреть по ссылке РЕЙТИНГ (ВСЕ). При подсчете рейтингов стран/городов/организаций они тоже теперь не учитываются.

И это еще не все! В скором времени ожидайте еще больше улучшений, к примеру ведется работа по данному вопросу и не только.

  • Проголосовать: нравится
  • +505
  • Проголосовать: не нравится

»
9 лет назад, # |
  Проголосовать: нравится +2 Проголосовать: не нравится

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

Хотя, может быть, так и было задумано, ибо все 3 попытки взлома я зафейлил, мб это был какой-то знак?..

  • »
    »
    9 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

    Еще когда Codeforces гонит и долго грузит) это вообще огонь) Приходится по несколько раз грузить)

»
9 лет назад, # |
  Проголосовать: нравится +14 Проголосовать: не нравится

I tried hacking today and it took much longer time than usual loading the codes.

I don't know it is because of the updated view of the codes or my connection was slower than usual.

But anyway I think you should give the option for the user to activate or de-activate this feature.

»
9 лет назад, # |
  Проголосовать: нравится +38 Проголосовать: не нравится

Wow, that is super!

Especially "Fixed a bug about local storage overflow.", "Syntax is now highlighted when you are hacking", "Improved topic categorization," and "we work on rating inflation problem" are changes which should be easily noticeable to everyone :).

I'm happy to hear that issues I brought to daylight like http://codeforces.me/blog/entry/17872 and earlier http://codeforces.me/blog/entry/15787 are improved :).

»
9 лет назад, # |
Rev. 2   Проголосовать: нравится +5 Проголосовать: не нравится

How about adding Rust programming language? 1.0 was released like three weeks ago :)

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится

    according to MikeMirzayanov Rust will appear "in time". Also, I personally see no benefits of using it in competitive programming instead of c++. There are lots of annoying things. Non-indexable strings, non-intuitive container interfaces, endless error handling, mess with IO, and of course its famous memory model.

    • »
      »
      »
      9 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится

      Competitive programming is fun. Rust is fun too.

      At least for me, that is the reason :)

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится +6 Проголосовать: не нравится

      There are X languages with big faults!

      Let's make one that avoids them!

      later...

      There are X+1 languages with big faults!

      Classic.

»
9 лет назад, # |
  Проголосовать: нравится -19 Проголосовать: не нравится

Спасибо за улучшения! А изменение правила "не засылал — не участвовал" планируется? :)

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится -32 Проголосовать: не нравится

    Если человек ни сделал не одной попытки, то он не участвовал.... В списке соревнования этот участник не числиться, рейтинг не изменяется...

»
9 лет назад, # |
  Проголосовать: нравится +17 Проголосовать: не нравится

"Syntax is now highlighted when you are hacking"

Awesome!!

»
9 лет назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится

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

  • тренировка видна только создателю, зайти может только создатель
  • тренировка видна создателю и тренерам, зайти могут создатели и тренеры
  • тренировка видна всем, зайти могут создатели и тренеры

Хотелось бы получить такой режим:

  • тренировка видна всем, а зайти могут только создатель и те, кому это разрешил создатель
»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

I know for a fact that when you are submiting and your program fails on the sample test, that would not count as a fail attempt.

Can you make it so you can see the example testcases when you submit you code during the contest? For ex. I wasted ~20 minutes yesterday because i was printing with cerr, and yes, it failed on the first example (the one in the problem) but i didn't knew why.

»
9 лет назад, # |
  Проголосовать: нравится +19 Проголосовать: не нравится

Does hacking still need Flash to be installed?

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

CodeForces is nice. and it's going to become better than nice ;)

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

The "link to comment" (which looks like #) heads to "http://codeforces.me/blog/entry/(BLOG_ID)?#comment_(COMMENT_ID)", so whenever I click it, it reloads the whole page, as the link is different from the current one ("http://codeforces.me/blog/entry/(BLOG_ID)") Could you please fix this?

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Автокомментарий: текст был обновлен пользователем MikeMirzayanov (предыдущая версия, новая версия, сравнить).

»
9 лет назад, # |
  Проголосовать: нравится +13 Проголосовать: не нравится

Auto comment: topic has been updated by MikeMirzayanov (previous revision, new revision, compare).

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Было бы круто иметь интерфейс чтобы сразу обе языковые версии поста исправлять.

Потому что сейчас забыть легко, а рассинхронизированность не сразу заметишь

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Специально ли сделано так, чтобы показывался не сам текст потенциально взломанного тобой кода, а картинка (некопируемая)?

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +22 Проголосовать: не нравится

    Да, чтобы нельзя было запустить стресс-тест со своим решением.