Google Code Jam 2011 starter paa fredag
Af Bartholomew Furrow, Software Engineer
I Mountain View og på kontorer rundt om i verden, er Googlere bruger deres 20% tid at blive klar til Google Code Jam 2011, forbereder algoritmiske problemer for de 10.000 eller mere kæmpere hvem vi forventer at konkurrere i vores kvalifikationsrunde denne fredag.
En god kode Jam problem har en historie at jorden er det i nogle version af virkeligheden: fodbold, ninja og beskeder fra fremmede kulturer har alle tjent beundringsværdig. Afbødet af historien, kernen i en kodeks Jam problem er en algoritmisk puslespil, hvis løsning skal alt fra et par linjer kode til en dyb forståelse af flow algoritmer eller talteori.
Ninja i midten er solidt funderet i virkeligheden.
Alle på Google kan skabe Code Jam problemer, hvilket betyder, at vores metoder til at opfinde dem varierer vildt. Én forfatter kan komme på tværs af en real-life situation tænke på, hvad algoritmen ville løse det, og basere et problem på denne, en anden forfatter måtte mene om hvordan man laver et problem ud af et videospil. Undertiden et problem forfatter vil starte med en algoritme og brygge et problem, at det løser. Vi er også virkelig synes at kunne lide at opfinde mærkelige situationer på skakspil.
Med historien og den valgte problemstilling, er vores arbejde kun delvist udført. Problemet skal angives på en sådan måde, at det vil være klart, selv for et publikum fra 125 lande. Mindst tre ingeniører arbejder på hvert enkelt problem erklæring: denne gruppe omfatter mindst én indfødt engelsktalende for at sikre den grammatik er alle korrekte, og mindst én ikke-engelsktalende for at sikre sproget er klart nok.
Den hårdeste del om oprettelse af et problem som dette er at kontrollere, at deltagerne fik det rigtige. I Code Jam, gør vi, at ved at give deltagere med en input-fil fuld af testdata. De sender tilbage deres program's produktion, som bør besvares med inddatafilen spørgsmål. Den hårde del er at afgøre, hvad går i, at input-fil: Vi har brug kant tilfælde, masser af gennemsnitlig sager, og en god antallet af sager, skal du sørge for kæmperen kode er hurtig nok. Hvis du vil oprette alle dem, vi genererer nogle tilfælde i hånden og andre pseudo-tilfældigt. Vi har været kendt for at generere en prøvesag eller to ud af ASCII kunst, eller som en kreativ-skrivning øvelse.
Endelig har vi løse problemerne selv. Vi kræver mindst tre løsninger fra forskellige ingeniører, og nogle gange har vi dem ingeniører skriver løsninger, som vi ved er forkert - bare for at sikre, at vores testdata fangster dem ud.
Slutresultatet af denne proces er den slags problem, vi er stolte af at bede vores deltagere til at løse. I 2011 mere end noget andet år, er vi begejstrede for kreativitet af vores kolleger, og de problemer, vi har planer om at udgøre. Vi håber du vil nyde de problemer fra den anden side - og hvis du er et fantastisk program ingeniør, måske kommer hjælpe os skrive dem i 2012.
Du kan tilmelde dig Google Code Jam 2011 http://code.google.com/codejam, og du vil se de første problemer i det år, i anerkendelsesdirektivet runde på fredag, den 6. maj starter kl 23:00 UTC. Til endnu flere detaljer om, hvordan vi får problemer klar til Code Jam, kan du læse vores officielle problem-præparat guide.
Bartholomew Furrow bruger 80% af sin tid på Google at finde måder til at fjerne dårlig søgeannoncer, og resten på Code Jam. Programmering konkurrencer introducerede ham for Datalogi, til Google, og hans kone.
Indsendt af Scott Knaster, redaktør
Abonner på:
Kommentarer til indlægget (Atom)
Ingen kommentarer:
Send en kommentar