• user warning: Got error 28 from storage engine query: SELECT DISTINCT t.* FROM drupal_term_node r INNER JOIN drupal_term_data t ON r.tid = t.tid INNER JOIN drupal_vocabulary v ON t.vid = v.vid LEFT JOIN drupal_forum_access fa ON t.tid = fa.tid LEFT JOIN drupal_acl acl_fa ON acl_fa.name = t.tid AND acl_fa.module = 'forum_access' LEFT JOIN drupal_acl_user aclu_fa ON aclu_fa.acl_id = acl_fa.acl_id AND aclu_fa.uid = 0 WHERE ((fa.grant_view >= 1 AND fa.rid IN (1)) OR fa.tid IS NULL OR aclu_fa.uid = 0) AND ( r.vid = 12602 )ORDER BY v.weight, t.weight, t.name in /var/www/dikutal.dk/modules/taxonomy/taxonomy.module on line 632.
  • user warning: Got error 28 from storage engine query: SELECT DISTINCT node.nid AS nid, node.title AS node_title, node.language AS node_language, node.type AS node_type, node.vid AS node_vid, node_revisions.teaser AS node_revisions_teaser, node_revisions.format AS node_revisions_format, node_data_field_date.field_date_value AS node_data_field_date_field_date_value FROM drupal_node node LEFT JOIN drupal_content_field_date node_data_field_date ON node.vid = node_data_field_date.vid LEFT JOIN drupal_term_node term_node ON node.vid = term_node.vid AND (term_node.tid = 9 OR term_node.tid = 10 OR term_node.tid = 12 OR term_node.tid = 19 OR term_node.tid = 18 OR term_node.tid = 13 OR term_node.tid = 16 OR term_node.tid = 17 OR term_node.tid = 11 OR term_node.tid = 14 OR term_node.tid = 15) LEFT JOIN drupal_node_revisions node_revisions ON node.vid = node_revisions.vid INNER JOIN drupal_node_access na ON na.nid = node.nid WHERE (na.grant_view >= 1 AND ((na.gid = 0 AND na.realm = 'all') OR (na.gid = 1 AND na.realm = 'book_page_access_view') OR (na.gid = 1 AND na.realm = 'forum_access'))) AND ( ((node.status <> 0) AND (node.type in ('event')) AND (term_node.tid IS NULL)) AND (DATE_FORMAT(ADDTIME(node_data_field_date.field_date_value, SEC_TO_TIME(7200)), '%Y-%m-%d') >= '2014-10-22') )ORDER BY node_data_field_date_field_date_value ASC LIMIT 0, 3 in /var/www/dikutal.dk/sites/all/modules/views/includes/view.inc on line 771.

Diku's Lambdabamserne har været til DM i programmering, og har for andet år i træk stjålet showet. Læs hvordan dagen forløb, og hvorfor du skal være med næste år (There will be cake).

Konkurrencen udspilles mellem hold studerende fra de forskellige studier i Danmark, hvor et enkelt hold skal udpeges til at gå videre til Northwestern European Regional Programming Contest (NWERC). Se mere på Netcompany.com/dm.

Ved ankomsten kl 10.30 er der tid til at holdene kan finde sig til rette ved deres borde inden der bliver kaldt til introduktion cirka kvart i. Netcompany forestår en introduktion af deres karrieremuligheder inden contest-systemet og konkurrencens vilkår bliver gennemgået. Da konkurrencen havde hevet programmørerne ud af sengen for at møde kl. 10:30 på en lørdag, er der selvfølgelig kaffe og muffins at starte på.

Til rådighed ved konkurrencen er en computer per hold og ingen andre elektroniske hjælpemidler er tilladt. Man opfordres til kun at bruge henholdsvis C++-, Java- og C-dokumentationen der linkes til fra hjemmesiden, altså manualerne for de tre tilladte sprog.

Når et hold har (eller mener at have) løst en opgave, sender de koden ind til kompilering og kørsel på serveren. Hvis den indsendte kode er for langsom, eller bruger for meget hukommelse, lukkes programmet og holdet modtager 20 strafpoint (minutter). Når en løsning godkendes af serveren, logges tiden inkl. strafpoint. Hvis to hold har løst lige mange opgaver, afgøres vinderen ud fra hvem der har løst opgaverne tidligst. Som en lille gimmick repræsenteres hver opgave samtidigt af en heliumballon med farve og bogstav. Når et hold har løst en opgave, kommer en official og binder den tilsvarende ballon til holdets bord.
På den måde kan man følge med i hvad de omgivende hold har løst. Det kan man dog også følge på hjemmesidens scoreboard. I sidste time opdateres scoreboardet ikke, og der udleveres ikke balloner. Ingen kan vide sig sikre før konkurrencen slutter.

En time inde i konkurrencen bydes der på sandwiches og cola,
efterfulgt af chips og chokoladebarer. Der er dermed sørget for alt, og holdene skal kun selv sørge for at medbringe overblik og de rigtige algoritmer.

Den opstillede computer havde frit valg af editor/IDE, men da der var tale om remote desktop-klienter, var det i praksis umuligt at anvende andet end plaintext-editorer, og mange hold valgte af den grund GEdit eller lignende.

DIKU stillede i år op med 3 hold: "Lambdabamserne", "Croissants of Justice" og "Team Hallas & The Mag". På trods af en overrepræsentation af AAU- og DTU-hold, lykkedes det Lambdabamserne at sikre DIKU sejren for andet år i træk. Ikke nok med at Lambdabamserne tog sejren i Danmark, de fik en flot andenplads i hele norden, kun slået af Team
Squirrel fra Sverige, som vel at mærke løste lige så mange opgaver.

Lambdabamserne afventer resultat på Kælderbaren.

Lambdabamserne havde ved konkurrencens udløb løst 9 ud af 10 opgaver, mens AAU's Team Rocket som den nærmeste konkurrent havde løst 7.
Se scoreboardet her.

Lambdabamserne. Fra venstre: Mathias Tejs, Søren Dahlgaard og Sebastian Paaske Tørholm.

Lambdabamserne har dermed vundet både 10.000 kr., og er kvalificeret til EM i Bremen, hvor de sidste år kunne bryste sig af en flot 9. plads.

Dikutal har talt med Lambdabamserne om sejren og hvordan de i en sådan grad kunne løbe fra konkurrenterne.

De mener selv at formlen til deres succes ganske enkelt har været træning, hvor Søren og Mathias har deltaget i flere lignende konkurrencer og har delt erfaringerne på holdet.

Har i nogen gode råd til de kommende DIKU-hold, der skal forsvare titlen næste år?
Mathias: "Der skal selvfølgelig laves mange opgaver. Derudover skal man supplere det med teori, så man kender alle
standard-algoritmerne. Et par gode råd: Når du har løst en opgave, så se hvordan andre har løst den samme opgave for at få inspiration. Prøv også at se om du kan nå ned til "kernen" eller "idéen" med opgaven. Hvad var det afgørende skridt i din løsning? Kunne den løses på andre måder?"

Torben Mogensen og Ken Friis Larsen, som begge er forelæsere på DIKU, afholdte tre 'trænings-' og vejledningstimer på DIKU inden DM. Hvad blev timerne brugt på, og hvad fik I ud af dem?
Mathias: "De spurgte om vi ville hjælpe med at dele ud af hvad vi vidste og mente kunne hjælpe. Vi fik ikke selv så super meget ud af det bortset fra en smart algoritme fra Torben."

Kunne der gøres mere for at fremme Dikus chancer i denne og lignende konkurrencer?
Søren: "Jeg synes i år var en god start [med
vejledningstimerne, red.], men jeg tror man skal gøre meget mere ud af reklamen. Der er ikke mange på DIKU der er superinteresseret i det, fordi mange kun vil kode funktionelt, men også fordi folk ikke ved noget om det [konkurrencerne, red.]."

De kommer med forslaget: "Det kunne være fedt, hvis DIKU prøvede at afholde en intern konkurrence så folk kan se hvad det rent faktisk går ud på."

Så man kan håbe at der vil komme lidt større eksponering af
konkurrencer på DIKU, da Lambdabamserne har bevist at vi dataloger har hvad der skal til.

Handlinger