
Благодаря инициативе группы пользователей из Ирана, на Codeforces в субботу, 30-го июля в 10:00 по Москве
состоится Unknown Language Round #3. Если коротко — это оригинальная форма спортивно-программистского развлечения, впервые предложенная мной в феврале этого года. Чуть подробнее можно прочитать здесь.
C началом соревнования вам предлагается набор задач и всего один язык программирования. Этот язык держится в строжайшем секрете до начала контеста. Мы предполагаем, что практически всем участникам он будет в новинку. Таким образом, за три часа рабочего времени вам предстоит соревноваться в программировании на неизвестном языке. Задачи различаются по сложности от совсем простых (пример) до довольно сложных (пример). Упор делается на задачи, требующие технику программирования, а не умение придумывать эффективные алгоритмы.
На предыдущих раундах мы задействовали языки Tcl и Io. Было весело!
Вот, например, решение китайского пользователя watashi, решившего эту задачу за примерно 50 минут и написавшего такой компактный код на незнакомом языке Io:
ini := Map clone section := "" ini atPut(section, Map clone) n := File standardInput readLine asNumber File standardInput readLines foreach(line, line = line asMutable strip if (line containsSeq(";"), continue) if (line containsSeq("["), section = line strip("[") strip("]") strip ini atIfAbsentPut(section, Map clone), kv := line split("=") key := kv at(0) asMutable strip value := kv at(1) asMutable strip ini at(section) atPut(key, value) ) ) ini keys sort foreach(section, if (section size > 0, ("[" .. section .. "]") println) subini := ini at(section) subini keys sort foreach(key, value = subini at(key) (key .. "=" .. value) println ) )
Приглашаю приобщиться к этому веселому мероприятию, приняв в нем участие.
Cсылки по теме:
