søndag 15. desember 2013 Julekalender
Jeg har vært både overrasket og veldig fornøyd med oppslutningen rundt julekalendere min i år. Jeg hadde ikke sett for meg at så mange skulle sitte parat hver morgen klokken 9 for å åpne lukene, og jeg hadde ikke trodd at så mange ville klare å løse oppgavene så raskt som de gjør.
Nå er det 9 luker igjen, og avstanden fra de som ligger på toppen av resultatlisten til resten har blitt betydelig. Magnar som ligger på førsteplass er så gjevn og trygg at det kan se ut som om han har innkassert seieren allerede.
Oppgavene blir mere verdt for hver dag, samtidig som poengverdien synker raskere. Vanskelighetsgraden på oppgavene er også i ferd med øke flere hakk, og sjansen er derfor aboslutt til stede for at andre (i alle fall de innenfor topp 10) kan ta inn forspranget.
Jeg håper at utviklerne lengre nede på resultatlisten vil fortsette å synes at kalenderen er gøy, og at man kan lære noe. 234 programmerere har løst oppgaver i kalenderen, og det synes jeg er kjempegøy. Men jeg må innrømme at fokuset mitt nå er på dem med flest poeng.
Nå følger noen ord om lukene som har vært de siste dagene...
På fredag den trettende viste jeg en enkel liten algoritme, og var ute etter navnet på den. Det var ikke vanskelig å se at det var en algoritme for å "stokke om" på elementene i en liste. Når første treff på søk etter "shuffle algorithm" er Fisher-Yates shuffle så tok det ikke lang tid før svarene haglet inn.
Aller raskest var Stian. Med syvende beste tid beholdt Magnar sammenlagtledelsen.
73 utviklere svarte riktig på denne oppgaven, og 22 gale svar ble forsøkt.
På lørdag returnerte vi til bioinformatikk. Problemet som skulle løses er velkjent, og kalles longest common subsequence (LCS) problem. Siden enkelte trodde det var dette problemet de skulle løse i luke 8 (løsningen den gang var longest common substring), visste jeg at det ville komme svar raskt.
Stian var egentlig den raskeste denne dagen også, men han hadde ikke lest oppgaven godt nok, og svarte med delsekvensen i stedet for lengden på den. Dermed smatt Dag Stuan forbi og tok flest poeng, mens Stian faktisk fikk andreplassen 12 minutter over 9.
Magnar tok sjetteplassen, og beholdt fortsatt ledelsen. Bare 31 utviklere fant riktig lengde, mens 40 gale svar ble levert inn (noen av dem ganske desperate).
Søndagens oppgave var å finne den korteste avstanden mellom et sett med punkter. Punktene var gitt på et format som man enkelt kunne ta inn i for eksempel litt JavaScript eller Ruby-kode. Det enkleste er så å kjøre et brute force-søk med to for-løkker. Det mest kompliserte da er matten for å finne avstanden mellom to punkt, noe man selvfølgelig finner på nettet om man ikke husker det.
Raskest til å finne svaret var Dag O. Prestegarden (Capgemini). Stian kom igjen inn på andreplass, mens Magnar berget fjerdeplass og ledelse totalt.
48 utviklere kom frem til løsninen. 27 feile svar ble forsøkt.