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

Язык этого раунда — Picat, во многом похожий на Prolog. Мы постарались подобрать задачи так, чтобы большинство из них было удобно решать с использованием декларативного подхода.

Традиционная программа A+B (числа A и B разделены пробелом) выглядит следущим образом:

main =>
  A = read_int(),
  B = read_int(),
  C = A + B,
  println(C).

Основной источник информации о языке — сайт http://picat-lang.org/. Используется версия 0.9. Если официальный сайт недоступен, скачать архив с компилятором можно здесь, пароль b161bb757645d9f0.

Несколько замечаний:

  • вердикт "ошибка компиляции" означает, что сильно нарушен синтаксис. В большинстве случаев (например, если ваша программа вызывает неописанную функцию), вердикт будет "неправильный ответ"
  • названия переменных должны начинаться с большой буквы или с подчеркивания
  • в функции printf рекомендуется использовать %n вместо \n
  • не используйте модуль mip, он выводит отладочную информацию в stdout

28 марта в 20:00 (московское время) состоится первый Уайлд-кард раунд VK Cup 2015, который будет проведен в формате Surprise Language Round. Правила:

  • Одновременно проводится два раунда: Уайлд-кард раунд 1 и Уайлд-кард раунд 1 (интернет-трансляция). В основном раунде участвуют команды, прошедшие квалификацию VK Cup. Интернет-трансляция открыта для всех (не только для участников VK Cup) в формате индивидуального участия. Команды, которые уже прошли в Раунд 2, могут участвовать в основном раунде вне конкурса.
  • В Раунд 2 проходят 50 лучших команд из основного раунда, которые не прошли в Раунд 2 по результатам Раунда 1.
  • Соревнование будет нерейтинговым для всех участников.
  • Соревнование проводится по правилам ACM ICPC: положение в результатах определяется количеством решенных задач, при равном количестве — набранным штрафным временем. Изначально штрафное время участника равно 0, при каждой сданной задаче оно увеличивается на время, прошедшее с начала контеста, + 20 минут за каждую неудачную посылку до отправки правильного решения. Решение считается правильным, если оно прошло все тесты из предопределенного набора; правильно ли посланное решение, становится известно сразу. Взломов чужих решений нет.
  • В раунде будет 8-10 задач, примерно отсортированных по сложности, и 2.5 часа на их решение.
  • Решения задач принимаются только на одном языке, который будет объявлен в начале контеста. Язык существует давно, а не придуман нами специально для раунда.
  • Пожалуйста, в начале контеста перечитайте этот пост целиком: в нем появится объявление языка, рекомендации по установке транслятора (в интерфейсе контеста будет доступен запуск программы онлайн) и полезные ссылки на документацию (на английском). В остальном изучение языка — дело рук самого участника.

Мы надеемся, что выбранный нами язык будет незнакомым для большинства участников раунда. Для справки приведу список Surprise/Unknown Language Round, которые проводились на Codeforces ранее.

Раунд Язык
Surprise Language Round #7 FALSE
Пятница, 13-ое, День Программиста Ada
Surprise Language Round #6 Roco
VK Cup 2012 Уайлд-кард раунд 1 Factor
Surprise Language Round #5 COBOL
Unknown Language Round #4 Befunge
Unknown Language Round #3 Pike
Unknown Language Round #2 Io
Unknown Language Round #1 Tcl

Удачи!


Контест окончен. Поздравляем победителей и напоминаем, что лучшие 50 команд из основного раунда проходят в Раунд 2! Разбор задач опубликован здесь.

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

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

Класс. Очень соскучился по этим раундам.

»
11 лет назад, скрыть # |
Rev. 2  
Проголосовать: нравится -17 Проголосовать: не нравится

Я что-то не очень понимаю логику таких раундов. Быстрее нагуглить, как работать на "волшебном" языке программирования?

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

уже отметил этот контест в своем гугл-календаре

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

Ура! Надеюсь, список малоизвестных языков для таких раундов никогда не закончится ;)

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

»
11 лет назад, скрыть # |
Rev. 2  
Проголосовать: нравится -22 Проголосовать: не нравится

Benefit of Unknown language contest that it is Unrated. Also ,The coder's introduce a new language.

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

Ни разу не участвовал в таких раундах. Подскажите, пожалуйста, могут ли возникнуть проблемы с установкой трансляторов/компиляторов под Windows? Очень не хочется ставить линуксы на работе.

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

Меня только смущает некоторая близость с первой квалификацией RCC.

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

Hope that the surprise language would be really fun! I always enjoyed learning a new language in surprise language rounds :D

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

Команды, которые уже прошли в Раунд 2, могут участвовать в основном раунде вне конкурса.

В полном составе?

Интернет-трансляция открыта для всех (не только для участников VK Cup) в формате индивидуального участия.

Члены одной команды могут участвовать по отдельности?

  • »
    »
    11 лет назад, скрыть # ^ |
     
    Проголосовать: нравится 0 Проголосовать: не нравится

    В основном раунде участвуют команды — они могут быть как полными, так и по одному.

    Трансляция ничего не знает о командах VK Cup и там надо участвовать индивидуально. Конечно, члены одной команды могут по отдельности там и участвовать.

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

> Напомним, что в Раунд 2 пройдут все те команды, которые наберут положительный балл не меньший, чем у команды на 400-м месте.

Я занял 343-е место, но при попытке зарегистрироваться на "VK Cup 2015 — Уайлд-кард раунд 1 (интернет-трансляция)" мне пишет, что я квалифицирован на основную версию.

В какой раунд регаться?

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

    Как хотите. У вас есть возможность регаться и туда и туда.

    • если вы хотите участвовать VK Cup командой, то надо регаться на основной (там вы будете вне конкурса, так как прошли в Раунд 2),
    • если вы хотите участвовать индивидуально, то надо регаться на трансляцию.
»
11 лет назад, скрыть # |
 
Проголосовать: нравится +3 Проголосовать: не нравится

I think you use icon language :D

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

Он пересечется с RCC2015 1-ой квалификацией!!! Даже времени на отдых не будет. Предлагаю перенести начало на 10-15 минут.

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

unrated?why? ):

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

Where will be language announced? in contest area?

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

I had some problems loading archive file under Linux, installing p7zip-full does the trick.

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

у меня компилятор на винде пишет *** error(undefined_predicate,main/0), хотя в запуске кф все норм. Что делать?? (Не охота ждать по 20 сек)

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

Реквестирую раунд на языке PETOOH

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

Как исправлять WA 4 в A?

»
11 лет назад, скрыть # |
 
Проголосовать: нравится -26 Проголосовать: не нравится

I would like to sincerely thank the organizers for not choosing FALSE again

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

i spent most of the time with a problem in the case there are not solutions in C; using solve_all works fine and gives me the solutions when they exist, but for the second sample case where there are no solutions, it gives me error(failed,main/0) and i could not get the catch mechanism to work...

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

Как и когда можно будет увидеть окончательный результат, без учёта тех, кто участвовал вне конкурса?

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

Time limit for last question was pretty tight — I had to keep resubmitting until it passed.

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

What is WA14 in F?

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

This might be the first and the last time when my university Prolog lessons were useful... :)

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

Дорешивание будет?

»
11 лет назад, скрыть # |
 
Проголосовать: нравится -8 Проголосовать: не нравится

Как решать Е?

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

как надо было делать H?

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

Не подскажите, с чем может быть связана ошибка error(instantiation_error,b_PICAT_ARG_ccf)?

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

Суперский раунд! Показывает приспособленность к меняющимся условиям — написать на новом языке контест. Сам язык стоило назвать "Партизан" — не говорит, где именно произошел failed ._.

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

Спасибо за раунд и за знакомство с Picat! Мне нравится Prolog, и я пытался на нём что-то интересное писать… но, в общем, впечатления не всегда самые хорошие. Picat в этой связи выглядит весьма интересно.