Permalänk

HackSussex Coders Cup 2024

Tjo!

YT lyckades magiskt veta att jag troligen ville se detta: https://youtu.be/VixYfv0UEyE?t=5863

Det roliga med det är att se olika lösningar för samma algoritmproblem samt att prova själv innan man ser lösningarna som passerar alla tester.

Den omgång jag tidslänkat till lyckades jag faktiskt lösa ganska OK fast inte lika fort som deltagarna förstås som dessutom är under tidspress. Jag kunde dock inte köra testerna som de kör. De får poäng utifrån hur många olika tester (och därmed troligen en hel del edge cases) deras kod lyckas passera vid körning.

Vad jag är riktigt nöjd över är att jag löste det utan chatGPT/Copilot/Gemini. Jag googlade bara små saker som att iterera genom JS-objekt. Löste det på JavaScript Playground-webbplats. Utmaningen var att skapa matchning mellan ett bokstaverat mönster och en sträng med ord: "abba" && "dog cat cat dog" och returna sant/falskt huruvida mönstret stämmer överens med icke-tomma ord (dvs., a=dog, b=cat och i rätt ordning):

function test(pattern, str) { str = str.trim(); if(pattern.split("").length !== str.split(" ").length) return false; let words = str.split(" "); let patterns = pattern.split(""); let obj = {}; for(i=0; i< words.length; i++) { obj[patterns[i]] = words[i]; } console.log(patterns); console.log(words); console.log(obj); for (const [key, value] of Object.entries(obj)) { console.log(`${key}: ${value} | Pattern key: ${patterns.indexOf(key)} | Word key: ${words.indexOf(value)}`); if(patterns.indexOf(key) !== words.indexOf(value)) return false; } return true; } console.log(test("ost","skiva ost skivad"));

Koden ovan klarar av vissa edge cases som ojämnt antal och mellanslag i början och slutet på strängen med orden.

Har du sett på HackSussex Coders Cup (tidigare) och/eller provat lösa deras utmaningar i samma veva?

Mvh,
WKF.

Visa signatur

"Den säkraste koden är den som aldrig skrivs"
"Visste du förresten att det är ett mångmiljardbolag?"
"Jag lever inte för att koda utan kodar för att sen kunna leva"