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

Автор VladimirYakovlev, 10 лет назад, По-русски

На Timus Online Judge обновлены компиляторы:

  • MinGW GCC 4.9.1

  • Clang 3.5

  • FreePascal 2.6.4

  • JDK 8.0

  • Scala 2.11.2

  • Python 2.7.8

  • Python 3.4.1

Некоторые изменения:

  • Благодаря компилятору Clang на Тимусе теперь поддерживается C++14.

  • Для всех новых компиляторов ненулевой код возврата решения теперь приведет к результату проверки Runtime error (non-zero exit code).

  • Вызов функции exit а Питоне больше не приведет к Runtime error.

  • В MinGW программы линкуются с libmsvcr110, а не с libmsvcrt, что, например, позволяет пользоваться спецификатором %lld, а не %I64d. Если интересно, как это настроить, спрашивайте.

  • Проблема с BigInteger.isProbablePrime в JDK теперь решается не как раньше. В JDK 8.0 этот метод перестал по-умолчанию зависеть от SecureRandom. Теперь isProbablePrime использует ThreadLocalRandom, который инициализируется исходя из MAC-адреса и текущего времени. Поскольку MAC-адрес на сервере никогда не меняется, а его определение требует доступа к опасным функциям, этот шаг инициализации ThreadLocalRandom был убран.

Подробнее в новостях на Тимусе.

UPD. Как в MinGW слинковать программу с libmsvcr110.

Создаем файл specs.msvcr110:

%rename cpp msvcrXX_cpp

%rename cc1plus msvcrXX_cc1plus

*cpp:
%(msvcrXX_cpp) -D__MSVCRT_VERSION__=0x1100

*cc1plus:
%(msvcrXX_cc1plus) -D__MSVCRT_VERSION__=0x1100

*libgcc:
-lmingw32 -lgcc -lgcc_eh -lstdc++ -lmoldname -lmingwex -lmsvcr110

В командную строку компилятора добавляем опцию -specs=specs.msvcr110.

Полный текст и комментарии »

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

Автор VladimirYakovlev, 12 лет назад, По-русски

Сегодня на Тимусе стало доступно сразу несколько новых компиляторов:

  • Go 1.0.3
  • VB.NET 2010
  • Python 2.7
  • Python 3.3
  • Ruby 1.9.3
  • Haskell 7.6.1

Справка по ним еще не дописана. Для справки нам нужны самые простые решения задач 1000. A+B Problem и 1001. Обратный корень и самые эффективные решения задачи 1001. Обратный корень. Если вы пишете на этих языках и хотите помочь Тимусу, то оставляйте свои варианты решений в комментариях к этому посту.

UPD. По многочисленным просьбам добавил еще и MinGW gcc 4.7.2. Опции компилятора такие же как на Codeforces.

UPD 2. Какие вы знаете отличия MinGW g++ от Visual C++? Было бы неплохо дополнить нашу справку.

Полный текст и комментарии »

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

Автор VladimirYakovlev, 12 лет назад, По-русски

О чем этот пост

quat Это отчет о недавно прошедшем NEERC 2012, о том, как он проходил на Питерской площадке, обо всем хорошем и плохом в плане организации. Отчет написан по образу и подобию легендарных отчетов Дмитрия Ковалева о Чемпионатах Урала по спортивному программированию: ЧУ 2004 – Black & White, ЧУ 2005 – White & Black, ЧУ 2006. Несмотря на не всегда корректный тон Дмитрия, его отчеты в свое время внесли заметный вклад в развитие Чемпионатов Урала, став для организаторов ценным источником обратной связи. Также и я при помощи этого отчета постараюсь дать обратную связь организаторам NEERC. Про большую часть описанных проблем они и сами знают, но напомнить все равно стоит. Отчет будет полезен также организаторам любых других контестов.

В NEERC я участвовал как гость, так что отзывов о задачах не будет, ведь я их даже не читал. Напишу, прежде всего, об организационной составляющей этого мероприятия, о том, как его видят гости и тренеры.

Полный текст и комментарии »

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