dastapov: (Default)
[personal profile] dastapov
Кстати, до конца квалификационного раунда Google Code Jam'09 осталось 11 часов. Учитывая, что задачки там - часа на полтора в общей сложности, еще не поздно зарегистрироваться и поучаствовать. http://code.google.com/codejam

PS: если кто участвует: скажите, какой у вас там ник

(no subject)

Date: 2009-09-03 03:39 pm (UTC)
From: [identity profile] janatem.livejournal.com
Хотел посмотреть квалификационные задачки, но лень стало регистрироваться... Может они уже где-то опубликованы?

(no subject)

Date: 2009-09-03 05:31 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
Там же можно спектатором зайти

(no subject)

Date: 2009-09-03 03:47 pm (UTC)

(no subject)

Date: 2009-09-03 04:05 pm (UTC)
From: [identity profile] antilamer.livejournal.com
jkff.
О злодей, ты украл у третьего номера fprog.ru 1 час труда над моей статьей!

В задаче B две попытки запорол на том, что неправильно назвал стороны света :(

(no subject)

Date: 2009-09-03 07:43 pm (UTC)
From: [identity profile] http://users.livejournal.com/_winnie/
А я на тикающем таймере в 4-ре минуты правил баг с картой размера 1x1 =)

(no subject)

Date: 2009-09-04 01:56 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
А что не склеилось в третьей?

(no subject)

Date: 2009-09-04 02:05 pm (UTC)
From: [identity profile] antilamer.livejournal.com
Тупо забыл взять по модулю 10000 :-|

(no subject)

Date: 2009-09-03 04:06 pm (UTC)

(no subject)

Date: 2009-09-03 04:44 pm (UTC)
From: [identity profile] maximkat.livejournal.com
MaximKat

(no subject)

Date: 2009-09-03 05:58 pm (UTC)

(no subject)

Date: 2009-09-03 06:12 pm (UTC)
From: [identity profile] http://users.livejournal.com/_winnie/
dobrokot.
Вспомнил студенчество, решил задачки =)

(no subject)

Date: 2009-09-03 06:15 pm (UTC)
From: [identity profile] savinovalex.livejournal.com
SavinovAlex :)
Как думаете, уровень 2 задачи в Round 1 будет соответствовать уровню 3ей сейчас?

(no subject)

Date: 2009-09-03 06:48 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
А у меня опыт только предыдущего gcj, который был длинее (по кол-ву раундов), чем этот. Так что загадывать сложно.

(no subject)

Date: 2009-09-03 06:18 pm (UTC)
From: [identity profile] dkorduban.livejournal.com
dkorduban

а вообще сейчас неинтересно. скорборд говорит только о том, кто во сколько пришел с работы =)

вас что-то не могу найти

(no subject)

Date: 2009-09-03 06:47 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
Я там - "ADEpt".

Интересно станет, когда закончится раунд и оценят large datasets. Во-первых, будут нормальные результаты по ним, а во-вторых, можно будет качать и смотреть чужой код.

(no subject)

Date: 2009-09-04 07:59 am (UTC)
From: [identity profile] dkorduban.livejournal.com
квалификация - что тут смотреть

(no subject)

Date: 2009-09-03 07:01 pm (UTC)
From: [identity profile] vsquash.livejournal.com
Squash

Третья задачка имхо посложнее чем первые две. Да и с математикой у меня не очень :(

(no subject)

Date: 2009-09-04 12:35 am (UTC)
From: [identity profile] darkk.livejournal.com
Она не сложнее, просто там не помешает кэширование результатов, хотя потенциальные тормоза на большом dataset легко оценивались по параграфу текста.

// darkk

(no subject)

Date: 2009-09-04 08:04 am (UTC)
From: [identity profile] http://users.livejournal.com/_winnie/
Там кстати можно не кеширование с рекурсией f(j, j), а табличку table[i][j] и тупой цикл по таблице.

(no subject)

Date: 2009-09-08 03:26 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
А в Haskell можно сделать табличку, элементы которой ссылаются на эту же табличку. Получится рекурсия на табличке без циклов :)

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

-- SOLVE A TEST CASE HERE:

Date: 2009-09-08 04:37 pm (UTC)
From: [identity profile] http://users.livejournal.com/_winnie/
Без циклов - это вот это -

memo = M.fromList [ ((k,part),v) | k<-tails str, part <- tails pattern, let v = worker k part ]

?

Re: -- SOLVE A TEST CASE HERE:

Date: 2009-09-08 06:39 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
Угу. Если посмотреть, то:
1)memo состоит из ((k,part), worker k part)
2)worker вычисляет какое-то значение на базе (val x y)
3)val x y - это, фактически, lookup значения из memo

Круг замкнулся.

PS
List comprehensions в условиях lazy evaluation циклом нельзя считать ну никак. Это декларация, а не "действие N раз".

Re: -- SOLVE A TEST CASE HERE:

Date: 2009-09-08 07:29 pm (UTC)
From: [identity profile] http://users.livejournal.com/_winnie/
Вау, круто, работает. Вот бы ещё научиться чувствовать ту грань, до который узел ещё завязывается, и за которой накажут бесконечной рекурсией.





import qualified Data.Map as M
import Data.Maybe

memo = M.fromList [(i, worker i) | i <- [0..20]]

val i = fromJust $ M.lookup i memo

worker 10 = 7
worker i = 1 + val ((i+1`mod` 20

main = print memo


Re: -- SOLVE A TEST CASE HERE:

Date: 2009-09-08 08:07 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
Ну, если где-то сам устроишь бесконечный цикл, или слишком рано форсируешь вычисления.

С бесконечным циклом все понятно - написал "worker = worker", и привет.


Пример раннего форсирования: если вместо Map взять Map.Strict или UArray/IOArray (не Array!) или любой другой контейне, который стразу редуцирует свои значения до weak head normal form.

(no subject)

Date: 2009-09-03 07:26 pm (UTC)
From: [identity profile] ilih.livejournal.com
ilih

у второй задачи долго не мог условие правильно понять
а у третьей поздно догадался кеширование прикрутить для большого набора

(no subject)

Date: 2009-09-03 09:12 pm (UTC)

(no subject)

Date: 2009-09-04 05:15 am (UTC)

(no subject)

Date: 2009-09-04 08:11 am (UTC)
From: [identity profile] ilyabo.livejournal.com
ibananti
спасибо за напоминание! чуть не проспал...

(no subject)

Date: 2009-09-04 10:21 am (UTC)
From: [identity profile] al-zatv.livejournal.com
al.zatv

поздно пришёл с работы, хотел спать, но таки вторую осилил. к счастью, хватило:) на то что выйду из первого раунда, почти не расчитываю - я 2,5 часа только условия читаю:)))

(no subject)

Date: 2009-09-04 10:45 am (UTC)
From: [identity profile] u1ik (from livejournal.com)
ADEpt, респект за то что на Хаскеле пишешь! Знаешь кого-нибудь еще из хаскелеров (кроме Reid)?

(no subject)

Date: 2009-09-04 01:58 pm (UTC)
From: [identity profile] http://users.livejournal.com/_adept_/
Так Reid же в этом году вроде не участвует?

Там, когда будут результаты, достаточно легко будет прошариться по Top-N и найти, кто пришет на Haskell.

Можно еще зайти на haskell@conference.jabber.ru и спросить - вроде там был кто-то

(no subject)

Date: 2009-09-05 06:20 pm (UTC)
From: [identity profile] renatm.livejournal.com
http://www.go-hero.net/jam/09/lang/Haskell

(no subject)

Date: 2009-09-04 02:34 pm (UTC)
From: [identity profile] http://users.livejournal.com/_winnie/
Забавно, в списке френдов все пишут на разных языках :)

Profile

dastapov: (Default)
Dmitry Astapov

May 2022

M T W T F S S
       1
2345678
9101112131415
161718 19202122
23242526272829
3031     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags