Resultat: Senior

Du har besvarat frågor. Du hade 15.

Dina poäng i början var 45. Om du svarade fel på alla frågor skulle du ha 0 poäng i slutet.

Du svarade rätt på 0 frågor.

Du svarade fel på 0 frågor.

Du svarade inte på 15 frågor.

Ditt resultat: 45/180

Bra gjort!

Du fick 0 poäng på frågan "Samla godis".

Du fick 0 poäng på frågan "Knäcka kryptot".

Du fick 0 poäng på frågan "En etta för mycket".

Du fick 0 poäng på frågan "Rullande bollar".

Du fick 0 poäng på frågan "Bebragram".

Du fick 0 poäng på frågan "Bildkomprimering ".

Du fick 0 poäng på frågan "Dryckesval".

Du fick 0 poäng på frågan "Tunnlar i hemmadammen".

Du fick 0 poäng på frågan "Trasig konstbevattning".

Du fick 0 poäng på frågan "Känna igen siffror".

Du fick 0 poäng på frågan "Arabots vandring".

Du fick 0 poäng på frågan "CykelKul".

Du fick 0 poäng på frågan "Kortaste vägen".

Du fick 0 poäng på frågan "Ordlek".

Du fick 0 poäng på frågan "Ut ur labyrinten".

1. Samla godis

Ca

Du fick 0 poäng på den här frågan. Maxpoäng är 9. Uppgiften låg på nivån medel.

Roboten Candy är programmerad att samla in så många godisbitar som möjligt medan den rör sig i rutnätet från starten nere till vänster till målet uppe till höger. I varje ruta ligger 0,1,2 eller 3 godisbitar. Candy kan bara röra sig antingen ett steg åt höger eller ett steg uppåt, och får efter varje steg plocka upp godisbitarna i rutan den hamnar i. 

Fråga: Hur många godisbitar kan Candy samla in från start till mål?

FÅ UPPGIFTEN UPPLÄST:

1.

Candy får ihop 12 godisbitar

2.

Candy får ihop 13 godisbitar

3.

Candy får ihop 14 godisbitar

Rätt svar
4.

Candy får ihop 15 godisbitar

Du besvarade inte denna fråga.

Lösning:

Rätt svar är 14.

Ett sätt att resonera är att stegvis uppdatera möjligheterna medan man "sveper diagonalt" genom tabellen

Utgångsläget är 0, så tabellen visar de ursprungliga antalen godisbitar

2 0 1 1 F
1 2 0 2 3
2 2 0 2 1
3 1 0 2 0
0 0 1 3 0

med antalet godisbitar man potentiellt kan få efter ett steg i fetstil. Nästa steg går uppåt eller till höger, och nollan uppdateras till 3 resp 0

 

Lägg märke till rutan med en godisbit till höger om trean eller ovanför nollan i fetstil. Dit kan man nå från endera, men största antalet bitar (4) får man om man kommer via trean.

2 0 1 1 F
1 2 0 2 3
2 2 0 2 1
3 4 0 2 0
0 0 1 3 0

Om man fortsätter på detta sätt inser man att det störst antalet bitar man kan ha i en viss ruta är antalet i rutan plus det största av "maximum till vänster"  resp. "maximum under". Uttryckt matematiskt 

V(i,j)=C(i,j)+max(V(i-1,j), V(i,j-1))

där C(i,j) är antalet godisbitar från början i rutan i,j och V(i,j) är maximala antalet man kunnat plocka till sig på väg dit. Eftersom man alltid vill titta under och till vänster kan man formellt lägga till en rad och en kolumn med nollor

V(i,0)=0, V(0,j)=0

Om man följer detta schema successivt får man slutresultatet

0 8 9 10 12 14
0 6 9 9 11 14
0 5 7 7 9 10
0 3 4 4 6 6
0 0 0 1 4 4
0 0 0 0 0 0

som visar att 14 är godisbitar är maximum i mål 

 

Detta är datavetenskap: Att hitta den bästa bland många möjliga lösningar är ett vanligt och svårt problem. I detta speciella godissamlingsproblem skulle man kunna prova alla möjliga väger, en s.k. rå kraft-metodik (brute force på engelska). Även med robotens begränsade rörelsemönster finns det tyvärr många vägar genom rutnätet, 70 stycken (ett antal man kan försöka härleda med hjälp av Pascals triangel).

Många av vägarna kan dock uppenbart väljas bort, och det är sedan möjligt att bland de kvarvarande hitta den bästa. Eftersom rutnätet är såpass litet går det att visa att alla andra vägar är sämre.

En effektivare lösning är att som vi gjorde uppdatera tabellen, med en metodik som kan kallas dynamisk programmering. När man har härlett en formel för det bästa värdet i en viss ruta utgående från värdet i cellen till vänster resp cellen under räcker det att utföra (i detta fall) 25 beräkningar för att gå från utgångsläget till det bästa slutresultatet.

 

 

2. Knäcka kryptot

Ru

Du fick 0 poäng på den här frågan. Maxpoäng är 9. Uppgiften låg på nivån medel.

I ett prefixchiffer omvandlas bokstäver till koder bestående av en eller flera siffror så att ingen bokstavskod startar med en annan bokstavs motsvarande kod.

Om till exempel A=12 så kan B vara 2 eftersom 12 inte startar med 2. I det fallet kan C vara 11 eftersom varken 12 eller 2 börjar med 11, men däremot kan C inte vara 21 eftersom 2 är koden för B eller 121 eftersom 12 är koden för A.

Dela upp följande sekvens i koder så att resultatet blir ordet BEBRAS.

12112233321

FÅ UPPGIFTEN UPPLÄST:

1.

A=33, B=1, E=21, R=22, S=321

Rätt svar
2.

A=33, B=1, E=2, R=223, S=21

3.

A=3, B=12, E=1, R=233, S=21

4.

A=33, B=1, E=21, R=2, S=321

Du besvarade inte denna fråga.

Lösning:

Rätt svar är A=33, B=1, E=21, R=22, S=321; dvs 1_21_1_22_33_321.

 

Om vi börjar från början, om B kodas som 12 så måste E ha koden 1 vilket inte är möjligt då koden för B då innehåller koden för E. Vidare är det omöjligt för B att ha en kod längre än två tecken (121, 1211, 12112, osv) eftersom dessa siffror ska upprepa sig. Alltså är koden för B=1.

Bokstaven E följs av B och alltså måste koden vara antingen 2, 21 eller 211223332. Den kan inte vara 2 eftersom då skulle ordet börja på BEBB. Den kan inte vara 211223332 eftersom då skulle ordet bara bli BEB. Alltså är koden för E=21.

Nu vet vi att 1_21_1 är koden för BEB och vi behöver dela upp 2233321 i koder för RAS.

Beakta sista bokstaven S: dess kod kan inte vara 1 eller 21 eftersom dessa koder redan används för B och E. Möjliga koder är därmed 321, 3321, 33321, 233321 eller 2233321. S kan inte kodas som 2233321 eftersom då skulle ordet bli BEBS. Den kan inte vara 233321 eftersom då skulle endast ett tecken användas för att koda både R och A. Den kan inte heller vara 33321 eftersom då skulle 22 användas för att koda både R och A vilket skulle kräva att båda kodades som 2 vilket inte är möjligt. Om S skulle kodas som 3321, skulle bokstäverna RA kodas som 223. Dock kan inte koden för R vara bara 2 och koden för A kan inte bara vara 3 eftersom andra koder startar med dessa siffror. Alltså måste koden för S vara 321, och 2233 koda RA. Enligt tidigare argumentation måste koden för R vara 22 och koden för A måste vara 33. Därmed får vi svaret A=33, B=1, E=21, R=22, S=321; dvs 1_21_1_22_33_321.

Detta är datavetenskap

Prefixchiffret som beskrivs i uppgiften är ett exempel på en prefixkod, där koder skapas som har egenskapen att ingen av dem börjar med en annan kod. Den här egenskapen är användbar i informationskodning, eftersom det inte behövs någon separator (som mellanslag) mellan två koder. En vanlig uppgift är att hitta en prefixkod som ger så korta meddelanden som möjligt givet en specifik uppsättning texter.  Detta används bland annat för att komprimera information så att de tar mindre plats att lagra. En metod för att hitta optimala prefixkoder är att använda Huffmankodning som använder korta koder för vanliga symboler och långa koder för mer ovanliga. Dessa koder används på många ställen, bland annat för vissa saker inom JPEG och MP3.


3. En etta för mycket

Si

Du fick 0 poäng på den här frågan. Maxpoäng är 6. Uppgiften låg på nivån lätt.

Jag upptäckte nyligen att jag gjort ett misstag i en lång lång text jag skrivit. Alla 1or skulle vara 11or och alla 11or skulle vara 1or. Som tur är har jag en texteditor där jag kan byta ut sekvenser av tecken. Se vad smu händer mu jag byter ut varje förekmust (förutmu den sista) av om med mu!

Vilket av följande alternativ fixade misstaget i min text (där $ är ett tecken som inte finns i texten)?

FÅ UPPGIFTEN UPPLÄST:

1.

Jag bytte ut alla 11or mot 1or och sedan alla 1or mot 11or.

2.

Jag bytte ut alla 1or mot 11or och sedan alla 11or mot 1or.

3.

Jag bytte ut alla 1or mot $ och sedan alla $ mot 11or och slutligen alla 11or mot 1or.

4.

Jag bytte ut alla 11or mot $ och sedan alla 1or mot 11or och slutligen alla $ mot 1or.

Rätt svar

Du besvarade inte denna fråga.

Lösning:

Rätt svar är: Jag bytte ut alla 11or mot $ och sedan alla 1or mot 11or och slutligen alla $ mot 1or.

Om jag först byter ut alla 11or mot 1or så kan vi inte längre skilja på de som var 1or från början och de som var 11or. I slutändan skulle jag bara ha 11or.

Om jag byter ut alla 1or mot 11or och sedan alla 11or mot 1or så kommer jag få samma text som från början.

Om jag byter ut alla 1or mot $ och sedan alla $ mot 11or och slutligen alla 11or mot 1or så får jag en text med bara 1or.

 

Koppling till datavetenskap

Att byta ut alla förekomster av text som uppfyller ett mönster är en vanlig operation i alla texthantering. Ett kraftfullt språk för att byta ut text är reguljära uttryck (eng regular expressions). Där kan man beskriva möster för vilken text som ska bytas ut och vad den ska bytas ut mot. Om du jobbar med programmering eller systemadministration är det väldigt viktigt att lära sig använda reguljära uttryck då de kommer underlätta mycket i din vardag. https://sv.wikipedia.org/wiki/Reguljära_uttryck

 

4. Rullande bollar

Rs

Du fick 0 poäng på den här frågan. Maxpoäng är 9. Uppgiften låg på nivån medel.

Numrerade bollar rullar nedför en ramp. Bollarnas ordning ändras om de faller ner i hål. När en boll kommer till ett hål, faller den ner i det om det finns tillräckligt med utrymme. I annat fall rullar bollen förbi hålet. Drar man ur sprinten i botten av varje hål, skjuts bollarna ut.

Här är ett exempel:

Steg 1: Innan bollarna börjar rulla.

Steg 2: Efter att bollarna slutat rulla.

Steg 3: Slutliga resultatet när sprinten är utdragen.

 

 

I bilden här nedanför rullar tio bollar nedför rampen. Tre hål A, B och C har plats för 3, 2 och 1 bollar som bilden visar. Sprintarna dras ut i ordningen A, B, C men detta sker först efter att alla bollar har slutat rulla.

Vilket av följande är slutresultatet?

FÅ UPPGIFTEN UPPLÄST:

1.

2.

3.

Rätt svar
4.

Du besvarade inte denna fråga.

Lösning:

Rätt svar är 

Hål A har plats för tre bollar, så boll 4 till 10 rullar förbi den i ordning. Hål B har plats för två bollar, så boll 6 till 10 rullar förbi den i ordning. Hål C har plats för en boll, så boll 7 till 10 rullar förbi den i ordning. Sedan dras sprinten i hål A ut och bollar matas ut i ordningen 3,2,1 och rullar till botten. Nu är bollarna längst ner i ordningen 7,8,9,10,3,2,1. Därefter dras sprinten i hål B ut och bollarna matas ut i ordningen 5,4. Nu är bollarna längst ner i ordningen 7,8,9,10,3,2,1,5,4. Slutligen dras sprinten i hål C ut och boll 6 rullar till botten vilket ger rätt svar.

Koppling till datavetenskap
Hålen fungerar som en stack som är en datastruktur, det vill säga det är ett sätt att organisera data. Den baseras på "sist in, först ut"-principen (LIFO - Last In First Out). Till exempel är den sista bollen som faller i ett hål den första bollen som stöts ut från hålet. Trots att det är en mycket enkel idé, är den användbar i många olika situationer. Du kan till exempel undersöka hur en stack kan användas för att kontrollera att parenteserna i ((1 + 2) * 3) är balanserade medan parenteserna i ((4 + 5) * (6-7) inte är det. Tanken är att alla öppningsparenteser sätts på en stack (den här funktionen kallas för push) och när dess matchande slutparentes hittas, avlägsnas öppningsparentesen från toppen av stacken (denna operation kallas pop). Så länge stacken inte är tom vid någon pop och stacken är tom när alla parenteser är slut så var de balanserade.

5. Bebragram

Du fick 0 poäng på den här frågan. Maxpoäng är 6. Uppgiften låg på nivån lätt.

Linjerna i diagrammet visar exakt vilka par elever i en klass som är vänner. En populär artist släpper en ny låt på måndagen och det finns en not bredvid varje elev som köper låten den dagen.

Varje dag efter det gäller att om en elev inte har köpt sången än, men minst hälften av hens vänner har gjort det (på en tidigare dag), kommer hen också att köpa låten. Annars köper hen inte låten än.

På vilken dag kommer alla eleverna att ha sången?

FÅ UPPGIFTEN UPPLÄST:

1.

Lördag

2.

Torsdag

Rätt svar
3.

Onsdag

4.

Söndag

Du besvarade inte denna fråga.

Lösning:

Det rätta svaret är torsdag.

Tom, Ted och Kim köper låten på tisdagen, Anna och Jane på onsdagen och Joe på torsdagen.

På tisdag:

På onsdag:

På torsdag har alla vännerna köpt låten.

Koppling till Datavetenskap

Uppgiften handlar om företeelsen att sprida inflytande genom ett socialt nätverk. Varje deltagare ändrar sig om dess grannar har en annan idé eller tankesätt. Här måste du simulera spridningen. Flera marknadsföringskampanjer utnyttjar olika sätt för spridning på sociala nätverk för att föreslå nya varor eller tjänster.

6. Bildkomprimering

Du fick 0 poäng på den här frågan. Maxpoäng är 12. Uppgiften låg på nivån svår.

Titta på följande 4x4 svartvita pixelbilder:

Detta kan lagras med binära siffror: "1" för vita pixlar och "0" för svarta pixlar.
För en 4x4 bild skulle vi behöva lagra 16 siffror. Följande bildkomprimeringsmetod gör det möjligt att lagra bilder med mindre utrymme, speciellt för enkla mönster:

De binära siffrorna är ordnade i ett rutnät precis som pixlarna i bilderna.

Komprimeringsmetoden appliceras på detta rutnät enligt följande, vilket resulterar i en teckensträng:

  1. Om alla siffror i rutnätet är 0, är resultatet "0" (se vänster bild). Om alla siffror i rutnätet är 1, är resultatet "1".
  2. I annat fall delas rutnätet i fyra delar. Komprimeringsmetoden appliceras medurs på varje del med början i det övre vänstra hörnet. Resultaten kombineras och omges av parenteser "(" och ")". För två olika exempel se bilderna i mitten och till höger.

Observera att ett delnät endast kan bestå av en enda siffra: se högra bilden, nedre högra hörnet. I detta fall använder metoden bara steg 1.

Nedan ser du en bild för med 8 × 8 pixlar. 

 

Vilken teckensträng blir resultatet då komprimeringsmetoden appliceras på detta rutnät? 

FÅ UPPGIFTEN UPPLÄST:

1.

(1110)

2.

(11(1011)1)

3.

(111(1(1101)11))

4.

(111(1(1011)11))

Rätt svar

Du besvarade inte denna fråga.

Lösning:

Det rätta svaret är (111(1(1011)11)).

 

Koppling till Datavetenskap

Quad tree-kompression lämpar sig bara för vissa typer av bilder.
https://en.wikipedia.org/wiki/Quadtree

7. Dryckesval

Ca

Du fick 0 poäng på den här frågan. Maxpoäng är 6. Uppgiften låg på nivån lätt.

Fyra vänner är ute på bilutflykt och bestämmer sig för att ta fikarast vid en servering längs vägen. De rangordnar hur de gillar de tillgängliga dryckerna genom att ge dem ett till fyra hjärtan, se tabellen.

 
Anna
Bert
Cissi
David

 

Exempelvis tycker Anna mest (4 hjärtan) om läsk, nästmest (3 hjärtan) om citronsaft, och så vidare. Serveringen har tyvärr nästan slut på sitt lager, och kan bara plocka fram en av varje sort. 


 

Fråga: Vilket är det största antalet hjärtan som vännerna kan få om de väljer dryck så att antalet hjärtan blir som störst? 

FÅ UPPGIFTEN UPPLÄST:

1.

Maxantalet är 12 hjärtan

2.

Maxantalet är 13 hjärtan

3.

Maxantalet är 14 hjärtan

Rätt svar
4.

Maxantalet är 15 hjärtan

Du besvarade inte denna fråga.

Lösning:

Rätt svar är 14 hjärtan. 

Eftersom tre personer alla föredrar      , så kan maxantalet hjärtan inte bli mer än 4+4+3+3, men det uppfylls t.ex. med följande fördelning 

 

Anna  Bert  Cissi  David  

Eftersom David har     som favorit, medan de andra sätter den sist , så måste han  få den för att två ska kunna få sin favorit. Alla de övriga har     som favorit, men eftersom Anna sätter     som tvåa, medan de övriga har den på tredje plats bör hon få den.  Nu kan Bert och Cissi diskutera (eller dra lott om) vem som tar vilken av     eller    , antalet hjärtan blir detsamma. 

 

Det är datavetenskap:

Optimering är en viktig del inom datavetenskp. I detta fall försöker vi maximera lyckan inom gruppen, definierat av totalantalet hjärtan. Optimeringsproblem dyker ständigt upp inom datavetenskapen.

I detta fall är det ett matchningsproblem. Dryckerna matchas till vännerna så att antalet hjärtan maximeras. Sådana problem är extremt viktiga i verkliga livet. Ett exempel är patienter som väntar på en transplantation och placeras på en lång väntelista. Tyvärr kan inte alla organ användas för en given person - organdonatorn måste t.ex. ha en kompatibel blodgrupp för att operationen ska ha en chans att lyckas. Sådana restriktioner gör det svårare att hitta en matchning som gör alla nöjda.

8. Tunnlar i hemmadammen

Ch

Du fick 0 poäng på den här frågan. Maxpoäng är 9. Uppgiften låg på nivån medel.

Bävrarnas bostadsdamm har tunnlar som förbinder fyra rum (A, B, C, F). De första tre (A, B, C) är vardagsrum, medan det fjärde (F) är förråd för mat, se bild. Tio bävrar befinner sig i rum A när de plötsligt alla vill ta sig till rum F för att äta (rum B och C är tomma). Eftersom de är mycket hungriga vill de alla komma till rum F så fort som möjligt.

Det tar 1 minut att krypa genom en tunnel, och bara en bäver i taget kan krypa igenom. Följande bäver kan alltså inte gå in i tunneln innan den föregående hunnit komma ut på andra sidan tunneln. 

Som syns i bilden går det ett antal tunnlar mellan rummen:
Mellan A och B: 4 tunnlar.
Mellan A och C: 1 tunnel.
Mellan B och C: 2 tunnlar.
Mellan B och F: 1 tunnel.
Mellan C och F: 3 tunnlar.

Rummen är stora och om det behövs ryms alls bävrar samtidigt i viket rum som helst. 

Fråga: Hur snabbt (antal minuter) kan i bästa fall alla 10 bävrar ha kommit från rum A till rum F?

FÅ UPPGIFTEN UPPLÄST:

1.

Det går på 3 minuter

2.

Det går på 4 minuter

Rätt svar
3.

Det går på 5 minuter

4.

Det går på 6 minuter

Du besvarade inte denna fråga.

Lösning:

Svar: Alla bävrar kan vara i rum F efter 4 minuter.

Det finns två kortaste vägar till F, ABF och ACF, båda tar 2 minuter men har bara rum för en bäver i taget.

Det finns en rutt med högre kapacitet, ABCF, som tar 3 minuter men kan ta två bävrar samtidigt.

För att optimera tiden visar det sig att man måste underutnyttja AB-rutten. Den optimala lösningen skickar 3 bävrar genom AB den första minuten och tre under den andra. Eftersom bara tre tunnlar leder ut från B blir den en flaskhals där bävrar skulle fastna om det kom fyra från A.

Tabellen beskriver vad som händer minut för minut tills alla bävrar kommit till maten i F. Även om 4 minuter är minimumtiden finns det flera sätt att nå den. I denna variant behöver inga bävrar vänta i rum B.

 

Händelser bävrar i A bävrar i B bävrar i C bävrar i F
Vid start 10 0 0 0
3 bävrar från A till B        
1 bäver från A till C        
efter 1 minut 6 3 1 0
3 bävrar från A till B        
1 bäver från B till F        
2 bävrar från B till C        
1 bäver från C till F        
1 bäver från A till C        
efter 2 minuter 2 3 3 2
1 bäver från A till B        
1 bäver från B till F        
2 bävrar från B till C        
1 bäver från A till C        
3 bävrar från C till F        
efter 3 minuter 0 1 3 6
1 bäver från B till F        
3 bävrar från C till F        
efter 4 minuter 0 0 0 10


 

Det är datavetenskap: 

I grafteori kan vi tänka oss nätverket av tunnlar som ett flödesnät. Det är en s. riktad graf där varje kant har en viss kapacitet (maximala antalet tunnlar eller bävrar mellan rummen) och varje kant får ett visst flöde. Flödet längs en kant kan inte överstiga kantens kapacitet. Målet är att optimera flödet av bävrar genom nätverket så att så många bävrar som möjligt anländer på kortast tid till maten. Ett sådant nätverk kan t.ex. användas för att beskriva trafiken i ett vägsystem. Det finns många algoritmer för sådana problem, en är Ford-Fulkerson algoritmen. Vårt problem är dock en specialversion av detta, eftersom bävrarna kan vänta i B eller C om de inte genast kan fortsätta. I det klassiska flödesnätverket kan inget bli stående, utan allt som kommer in måste ut genom andra kanaler. Det klassiska problemet föreskriver också riktningar för varje tunnel, medan bävrarna är fria att krypa i vilken riktning som helst.

9. Trasig konstbevattning

At

Du fick 0 poäng på den här frågan. Maxpoäng är 6. Uppgiften låg på nivån lätt.

Bertil Bäver har en blomrabatt och en grönsaksodling. För bevattning av dessa har han byggt två identiska bevattningssystem. Ett av dem visas på bilden. 

De är kopplade till en strömkälla och består av: 

  • en lång kabel
  • en kort kabel
  • en pump, som innehåller en säkring. Pumpen startar inte om säkringen är trasig.

En dag slutade blommornas bevattningssystem att fungera. Bertil bekräftade att vattenrören och vattentanken inte är problemet. Alla delar av det andra bevattningssystemet, som används för att vattna grönsakerna, fungerar dock ordentligt och kan användas för testning.

Det finns bara en felaktig del och Bertil vill hitta felet. Det finns inget uppenbart tecken på vilken del som är felaktig. Bertil börjar att testa.

Vilket av följande påståenden är sanna?

FÅ UPPGIFTEN UPPLÄST:

1.

Vid testning bör man ersätta två delar åt gången för att hitta felet, eftersom detta tillvägagångssätt alltid resulterar i färre försök än att ersätta en del i taget.

2.

Vid testning måste man börja med säkringen eftersom den är den billigaste delen av systemet.

3.

Felsökningen måste starta med den långa kabeln, eftersom det är den längsta delen av systemet.

4.

Byte av en del i taget hjälper till att identifiera den felaktiga delen. När systemet börjar fungera vet man att den del som ersatts sist var felaktig.

Rätt svar

Du besvarade inte denna fråga.

Lösning:

Rätt svar är:

Byte av en del i taget hjälper till att identifiera den felaktiga delen. När systemet börjar fungera vet man att den del som ersatts sist var felaktig.

- Längden på slangen har ingen betydelse för att bevattningssystemet inte fungerar. Längden på program eller en komponent är ingen garanti för att den innehåller fler fel.

- Priset på en komponent spelar förstås heller ingen roll när man ska hitta felet.

- Att testa två komponenter samtidig resulterar inte i färre försök än att ersätta en del i taget. Om den trasiga delen är mot slutet av systemet, så kommer visserligen "testa två samtidigt" att kräva färre försök. Men om den felaktiga delen är i början (t.ex. strömförsörjning) behövs bara en enda provning om man byter en del i taget (vi kommer att observera att efter att ha ersatt strömförsörjningen fungerar systemet), men om man ersätter två delar åt gången skulle det krävas minst två försök att bestämma att strömförsörjningen är den felaktiga delen.

 

Detta är datavetenskap

Felsökning är en av de viktigaste uppgifterna i programmering eftersom komplexa system oundvikligen tenderar att få fel. Att hitta ett fel i ett program är svårt, men att hitta två fel är ännu svårare. Därför har utvecklare strategier att arbeta med för att få fungerande kod samt att köra tester efter varje viktig förändring. 

https://en.wikiquote.org/wiki/John_Gall, https://en.wikipedia.org/wiki/Systemantics

 

10. Känna igen siffror

Ru

Du fick 0 poäng på den här frågan. Maxpoäng är 12. Uppgiften låg på nivån svår.

Ett system känner igen siffror som ser ut så här:

Varje siffra består av upp till 7 streck. För att känna igen en siffra behöver man inte se alla strecken, utan det går att avgöra vilken siffra det är även om endast en del av strecken är synliga. 

Vilket alternativ nedan visar de streck som minst behövs för att unikt kunna särskilja alla siffror 0-9?

FÅ UPPGIFTEN UPPLÄST:

1.

Rätt svar
2.

3.

4.

Du besvarade inte denna fråga.

Lösning:

Rätt svar är

För att förstå vilka streck som krävs kan vi titta på par av siffror där endast ett streck skiljer dem åt:

Låt oss ta 0 och 8, de skiljer endast i ett streck vilket alltså måste vara med. Genom att titta bara på det strecket kan vi dela in alla tecken i två grupper, en grupp med de där strecket är med (2, 3, 4, 5, 6, 8, 9) och en grupp där det inte är med (0, 1, 7). Vi kan sedan se att 1 och 7 också endast skiljer sig i ett streck, vilket alltså måste vara med. Med de två valda streckena får vi nu fyra grupper av tecken (1), (0, 7), (4), (2, 3, 5, 6, 8, 9) och vi kan alltså unikt särskilja 1 och 4. Vi kan fortsätta och hitta siffror som endast skiljer sig i ett streck.

Efter att ha lagt till strecket som skiljer 3 och 9 så har vi (0), (1), (4), (7), (2, 3) och (5, 6, 8, 9).

Efter att ha lagt till strecket som skiljer 5 och 6 så har vi (0), (1), (2), (3), (4), (7), (5, 9) och (6, 8).

Efter att ha lagt till strecket som skiljer 6 och 8 så har vi (0), (1), (2), (3), (4), (5), (6), (7), (8) och (9).

Om vi använder alla ovanstående streck kan vi alltså unikt särskilja alla 10 siffrorna.

 

Koppling till datavetenskap

Mönsterigenkänningsalgoritmer försöker alltid ge ett rimligt svar för alla möjliga bilder utifrån mönsternas statistiska egenskaper Mönstermatching är en del inom maskininlärning som fokuserar på att hitta mönster och regelbundenheter i data. En approach är att hitta specifika mönster eller egenskaper som unikt identifierar objekt. Mönstermatchning är också väldigt vanligt inom bildbehandling vilket är ett aktivit och viktigt forskningsområde.

11. Arabots vandring

Cz

Du fick 0 poäng på den här frågan. Maxpoäng är 9. Uppgiften låg på nivån medel.

En Arabot är en robot som går på ett papper. Den följer alltid de svarta vägarna som är målade på papperet. På varje vägsträcka finns en bokstav, som får araboten att svänga vänster (L) eller höger (R) vid nästa korsning (). Några bokstäver är redan skrivna, men resten av dem ska du bestämma.

Jenny låter araboten starta på platserna A, B eller C. Hon vill att den alltid ska komma fram till laddningsplatsen () där den kan ladda sitt batteri. Om den kommer till någon av platserna A, B eller C så blir den förvirrad och stänger av sig.

 

Hjälp Jenny att bestämma vilka bokstäver som ska stå på vägsträckorna för att araboten ska komma fram till laddningsplatsen oavsett om den startar från A, B eller C. Svara med en textsträng med 6 bokstäver (R eller L), där första bokstaven anger märkningen på den sträcka som är numrerad med 1, nästa bokstav den som är numrerad med 2, och så vidare.

FÅ UPPGIFTEN UPPLÄST:

Du besvarade inte denna fråga.

Lösning:

Det rätta svaret är RLLLRR. Det ska alltså se ut så här:

När araboten kommer in från startplatserna B och C måste vi få den att fortsätta in mot mitten i figuren, så sträcka 2 måste ha bokstaven L och sträcka 5 måste ha bokstaven R. Eftersom den sedan svänger av uppåt i figuren måste sträcka 3 ha bokstaven L för att undvika att den svänger in till A. Alltså kommer araboten att passera antingen sträcka 1 (om den startade från B eller C) eller sträcka 6 (om den startade från A), i båda fallen i riktning mot laddningsstationen. Det enda sättet att nå laddningsstationen är att komma snett nerifrån så de återstående sträckorna måste märkas så att araboten alltid kommer den vägen, nämligen genom R på sträcka 1, L på sträcka 4 och R på sträcka 6.

Detta är datavetenskap

När araboten följer en rutt genom grafen så innebär varje steg att läsa och förstå en instruktion: ”vilken väg ska tas i nästa korsning”, och detta val påverkar också vilken ny instruktion araboten får. Detta påminner om hur datorhårdvara fungerar på elektroniknivå.

Men uppgiften handlar också om att hantera flera olika vägproblem (A till , B till och C till ) i en enda datastruktur (en graf i det här fallet). Den väcker därför ett antal intressanta matematiska frågor om hur svårt det egentligen är att bestämma rätt bokstäver. Några av dessa frågor är olösta och studeras aktivt av forskare i datavetenskap och komplexitetsanalys. Besläktade frågor har tillämpningar inom beräkningsbiologi och beräkningsmedicin.

12. CykelKul

De

Du fick 0 poäng på den här frågan. Maxpoäng är 9. Uppgiften låg på nivån medel.

CykelKul är den nya attraktionen i staden där det gäller att cykla genom olika banor. Varje bana består av flera sektioner som antingen lutar nerför, lutar uppför eller är platta. Reglerna du måste följa är:

  • Din starthastighet är 0 km/ h.
  • I varje nerförs-sektion kommer cykelns hastighet att öka med 10 km/h.
  • I varje uppförs-sektion sänks cykelns hastighet med 10 km/h.
  • På varje platt sektion får du bestämma själv, men du måste antingen öka eller minska farten med 10 km/h.

Vid banans slut (Finish) måste hastigheten åter vara 0 km/h. Om du under banans gång behöver sänka farten när den redan är 0 km/h, så blir du diskad. Om hastigheten blir 0 km/h innan banan är sut, måste du öka hastigheten i följande sektion.

Nedan följer en skiss av en bana som är genomförbar enligt reglerna. På de platta sektionerna bör du öka/minska hastigheten som det anges enligt tecknen i cirklarna. Varje kvadrat motsvarar en sektion av banan, och farten vid slutet av varje sektion visas på översta raden (Speed). Hastigheten i mål är åter nere vid 0, som den ska.

 

Fråga: Endast en av följande fyra banor går att cykla enligt reglerna, vilken?

FÅ UPPGIFTEN UPPLÄST:

1.

2.

3.

Rätt svar
4.

Du besvarade inte denna fråga.

Lösning:

Svar: 

är den enda genomförbara banan. På de släta sektionerna kan du göra + - -, - + -, eller - - +, eftersom det bara gäller att totalt minska med 10 km/h för att vara nere till 0 vid mållinjen. 

 

Övriga banor är inte genomförbara:

 Även om du ökar på den släta (andra) sektionen kommer farten att ta slut innan mål.


Även om du bromsar på båda de släta sektionerna kommer din hastighet att vara för hög i mål.


På sista sektionen ökar farten, och eftersom din hastighet inte kan vara negativ när du når den är det omöjligt att din hastighet är 0 i mål. mål.

 

Det är Datavetenskp:

Parenteser är vanliga i formler. I algebraiska uttryck, som [n (n-1)] / 2 eller (a + b) (a-b) används parentes för att uttryckligen föreskriva operatorsordningen. Parenteser används alltid parvis, med en början(=vänsterparentes) och ett slut(=högerparentes). Uttryck är "välformade" endast om parenteserna är korrekt ordnade. En högerparentes måste matcha den närmast föregående vänsterparentesen, och för varje vänsterparentes måste det finnas en högerparentes.

På samma sätt måste många instruktioner (eller "språk" som datavetenskapare säger) som ska "förstås" av datorer, innehålla några typer av parenteser. Till exempel, i beskrivningsspråket HTML för webbsidor, omsluts ett stycke av öppnings- och stängningskoderna <p> och </ p>, och varje kod själv alltså i ett par parenteser < och >. Men varför är parentespar så populära i datorspråk? Anledningen är enkel: De är enkla att bearbeta!

Sektionerna i CykelKul-banorna kan också betraktas som parenteser: En nedfartssektion är en vänsterparentes och en uppförsbacke en högerparentes. En slät sektion är en tom plats där man valfritt kan sätta in en vänster- eller en högerparentes. En CykelKul-bana är genomförbar om denna insättning kan utföras så att resultatet är ett välformat parentesuttryck. Den möjliga banan ovan kan symboliskt skrivas (? (??), och den är genomförbar eftersom den kan omvandlas på flera sätt till ett välformat parentesuttryck: (())) eller () (()) eller () () (). I teoretisk datalogi kallas ett språk av välformade parentesuttryck ett "Dyck-språk".

 

13. Kortaste vägen

Nl

Du fick 0 poäng på den här frågan. Maxpoäng är 12. Uppgiften låg på nivån svår.

I bilden nedan visas ett enkelriktat nät av vägar. Talet i varje färgad nod representerar det kortaste avståndet från S till den noden.

Vilket av följande påståenden om de två noderna med tjockare linjer (3 och 11) är sant?

 

FÅ UPPGIFTEN UPPLÄST:

1.

Det kortaste avståndet mellan dessa noder är exakt 8

2.

Det kortaste avståndet mellan dessa noder är 8 eller mindre

3.

Det kortaste avståndet mellan dessa noder är 8 eller mer

Rätt svar
4.

Inget av påståendena stämmer

Du besvarade inte denna fråga.

Lösning:

Rätt svar är att det kortaste avståndet mellan dessa noder är 8 eller mer.


Om det kortaste avståndet skulle vara mindre än 8 bör det kortaste avståndet mellan S och nod 11 vara mindre än 11. Det kortaste avståndet kan vara större än 8, eftersom den kortaste vägen från S till nod 11 kan gå genom de yttre hörnen av nätverket.

Koppling till Datavetenskap

Att räkna ut avstånd mellan olika noder i en graf är ett vanligt problem till exempel när man ska hitta en väg mellan två platser i en karta.

14. Ordlek

Pl

Du fick 0 poäng på den här frågan. Maxpoäng är 9. Uppgiften låg på nivån medel.

Bävrarna tycker om att leka med ord. De definierar en ”operation” som en av följande:

  • sätt in en bokstav någonstans i ordet
  • ta bort en bokstav någonstans i ordet
  • ändra en bokstav någonstans i ordet till en annan bokstav

Bävrarna säger att ”avståndet” mellan två ord är det minsta antalet sådana operationer som behövs för att ändra det ena ordet till det andra. De ord som skapas under tiden behöver inte betyda något.

Exempelvis är avståndet 3 mellan KALAS och GLASS. En möjlig följd av operationer är
1. KALAS -> GALAS    (ändra K till G)
2. GALAS -> GALASS    (sätt in ett S)
3. GALASS -> GLASS    (ta bort ett A)


Vad är avståndet mellan orden STÄVAN och BÄVERN ?

FÅ UPPGIFTEN UPPLÄST:

1.

3

2.

4

Rätt svar
3.

5

4.

6

Du besvarade inte denna fråga.

Lösning:

Rätt svar är 4. En möjlig sekvens av operationer är

STÄVAN -> SÄVAN   (ta bort T)
SÄVAN -> BÄVAN   (byt S mot B)
BÄVAN -> BÄVARN   (sätt in R)
BÄVARN -> BÄVERN   (byt A mot E)

 

Detta är datavetenskap

Det här måttet på hur lika två textsträngar är kallas för Levenshtein-avstånd och har tillämpningar inom såväl datavetenskap som lingvistik och till och med genetik.

https://en.wikipedia.org/wiki/Levenshtein_distance#Applications

15. Ut ur labyrinten

Ch

Du fick 0 poäng på den här frågan. Maxpoäng är 12. Uppgiften låg på nivån svår.

Mysto måste hitta en väg genom labyrinten på bilden nedan, och vill ha instruktioner av dig. Han har just gått in i labyrinten och står vid den svarta triangeln. Han vill nå utgången vid den stora röda cirkeln.

Mysto förstår tre olika instruktioner:

Gå ett steg framåt  F
Vrid dig åt höger  H
Vrid dig åt vänster  V

Problemet är att Mysto bara kan minnas 13 sådana instruktioner. Sedan börjar han om på den första igen, och upprepar hela serien gång på gång. Om han någon gång får instruktionen att gå in i en vägg blir han sur och slutar.

Fråga: Om Mysto vid starten står vänd som triangeln visar, vilken av följande instruktionsserier leder honom genom labyrinten till den röda cirkeln?

FÅ UPPGIFTEN UPPLÄST:

1.
F H F V F V F F H F V F F
2.
V F F H F F V F F H F H F
3.
F H F V F V F F H F F H F
Rätt svar
4.
V F F F F H F F F H F V F

Du besvarade inte denna fråga.

Lösning:

Svar: Följande serie med instruktioner upprepad tre gånger leder Mysto genom labyrinten:

F H F V F V F F H F F H F

 

 

 

Detta är datavetenskap

Mysto följer ett program för att komma till utgången. Ett program består av en serie instruktioner och ibland måste serien upprepas. För att göra det så enkelt som möjligt innehåller de flesta programspråk speciella instruktioner för "loopar". En serie kommandon kan på så sätt upprepas valfritt antal gånger, bestämt av programmeraren. Genom att använda loop-instruktioner slipper man skriva om programavsnitt flera gånger, vilket gör programmet effektivare och lättare att läsa och ändra.