Назвался груздем - пиши отчет о полезании в кузов.
В понедельник завершилось ежегодное программистское соревнование ICFPC, в котором я традиционно участвую с 2007 года (мои предыдущие отчеты: 2007, 2008, 2009).
Если в прошлом году задание было очень четким, понятным, и оттого немного скучным, то в этом году оно было очень непонятное. Участникам предлагалось состязаться на рынке машин и топлив, где команды выпускают разные машины и производят для своих и чужих машин топливо. У кого лучше топливо и кто больше машин им обеспечил, тот больше денег (очков) заработал. В задании было описано, как в машинах бывают устроены двигатели, и как определяется, подходит ли им топливо. При этом сами машины и топлива кодировались последовательностью троичных цифр, но как именно - не сообщалось (разве что была подсказка, что там есть списки, туплы и числа произвольной длины). Более того, недостаточно просто придумать и закодировать топливо для машины, нужно создать фабрику для производства этого топлива, и ее уже посылать на сервер. Про фабрику было сказано, что она состоит из соединяющихся друг с другом гейтов, у каждого гейта два входа и два выхода. От выходов ко входам бегают троичные цифры (триты), какой-то неизвестный их поток подается на вход фабрики, и на выходе фабрики получается некий поток тритов, он-то и должен кодировать топливо. Устройство гейтов не уточнялось, формат фабрики - тоже, разве что был дан один пример:
( Read more... )
В понедельник завершилось ежегодное программистское соревнование ICFPC, в котором я традиционно участвую с 2007 года (мои предыдущие отчеты: 2007, 2008, 2009).
Если в прошлом году задание было очень четким, понятным, и оттого немного скучным, то в этом году оно было очень непонятное. Участникам предлагалось состязаться на рынке машин и топлив, где команды выпускают разные машины и производят для своих и чужих машин топливо. У кого лучше топливо и кто больше машин им обеспечил, тот больше денег (очков) заработал. В задании было описано, как в машинах бывают устроены двигатели, и как определяется, подходит ли им топливо. При этом сами машины и топлива кодировались последовательностью троичных цифр, но как именно - не сообщалось (разве что была подсказка, что там есть списки, туплы и числа произвольной длины). Более того, недостаточно просто придумать и закодировать топливо для машины, нужно создать фабрику для производства этого топлива, и ее уже посылать на сервер. Про фабрику было сказано, что она состоит из соединяющихся друг с другом гейтов, у каждого гейта два входа и два выхода. От выходов ко входам бегают троичные цифры (триты), какой-то неизвестный их поток подается на вход фабрики, и на выходе фабрики получается некий поток тритов, он-то и должен кодировать топливо. Устройство гейтов не уточнялось, формат фабрики - тоже, разве что был дан один пример:
( Read more... )