Labbar
Börja med att registrera dig på kurssidan i Kattis, se instruktioner här.
Läs sedan introduktionen till Java här och/eller här. Hjälp med att installera och köra java hittar du här. Instruktioner för att använda Java i Kattis finns här.
För godkänt på kursen krävs godkänt på uppgift 1 − 6 nedan. För den som vill ha ytterligare utmaning finns även de två extrauppgifterna 7 och 8.
OBS! Inlämningsuppgifterna ska göras individuellt. Man kan diskutera uppgifterna med sina kurskompisar, men det är absolut förbjudet att titta på någon annan students programkod, eller att visa sin kod för någon annan student. Detta kommer att betraktas som fusk! Alla insända bidrag kommer att plagiatkontrolleras. Se även EECSs hederskodex.
Notera också att uppgifterna har en deadline.
Testa gärna Hello World, för att se hur Kattis fungerar.
- Lägg ihop ord
Läs först om in- och utmatning i Java, t.ex. här och här.
- Primtalskoll
Links to an external site.
läs först om variabler, operatorer, uttryck och grundläggande kontrollstrukturer i Java.. - Formelparser
Links to an external site.
Läs om tal och strängar Links to an external site.. - Unika Ord
Links to an external site.
Läs om strängar i tutorial Links to an external site., och i API:t. Links to an external site. - Räkna öar
Links to an external site.
Här kan det vara bra att läsa om arrayer Links to an external site.och Collections Links to an external site., t.ex Deque Links to an external site.. Om du vill testa din kod på större sjökort kan du göra egna filer med hjälp av MapBuilder.java. - Bonuspoängen
Links to an external site.
Läs först om klasser och objekt t.ex. här . För att lösa uppgiften, definiera en hjälpklass Result som representerar en resultatrad. Denna klass ska implementera interfacetComparable<Result>
med metodencompareTo
för att smidigt kunna jämföra vilken av två resultatrader som ska listas först. Man kan läsa mer omComparable
här och här, och mer om interface i allmänhet här.
Lägg gärna alla resultat i en array avResult
. KlassenArrays
tillhandahåller ett smidigt sätt att sortera arrayer med hjälp av metodensort
. -
Fönster
(icke-obligatorisk extrauppgift)
För den här uppgiften måste man tänka till lite för att få den att bli tillräckligt snabb. Hitta en algoritm som inte behöver behandla alla pixlar som ligger innanför redan behandlade fönster. - Dekompression
Links to an external site.
(icke-obligatorisk extrauppgift)