Leiden University LIACS
home    contact    webmail    blackboard    wiki
Home
Contact
Current Projects
SNP
DNAvis
Finished Projects
Publications
Posters
Presentations
Education
Links
Studies
Personal page
Search 

Algoritmiek 2007

Op deze pagina staat wat informatie over de werkgroep Algoritmiek, het practicum en de programmeeropgaven. Als er iets mist of onduidelijk is, laat het mij weten. Zie ook de pagina voor het vak zelf.

Practicum

Het skeletprogramma staat hier. Volg de volgende stappen om te beginnen.
  • Gebruik "tar -xzvf practicum.tgz" om het skeletprogramma uit te pakken.
  • Type "cd practicum".
  • Type "make" om het practicum te compileren.
  • Type "sh test.sh | less" om het practicum te draaien.
  • Gebruik de 'up' en 'down' pijltjestoetsen om te scrollen en 'q' om te stoppen.
De opgaven staan hier. Bewerk "boom.cc" om de opgaven in het practicum te verwerken. In dit bestand staat duidelijk aangegeven van waar tot waar aanpassingen gemaakt dienen te worden.

De liefhebbers kunnen ook zelf bomen maken om uit te proberen. Let er wel op dat de bomen niet hoger mogen zijn dan 6 en dat de invoer een geldige preordewandeling van een boom moet zijn. Het getal '0' is gereserveerd voor het aangeven van een NULL pointer.
De preordestring "a00" geeft dus een boom met 'a' als wortel en geen kinderen. De string "a0b00" geeft een boom met 'a' als wortel en 'b' als rechterkind.

De uitwerkingen zijn hier te vinden, als alles goed is, dan moet het programma een uitvoer hebben die sterk hierop lijkt.

Programmeeropgave 1

De opgave is hier te vinden. Het inleveren moet zowel electronisch als op papier gebeuren.
De papieren versie van het verslag met de code als bijlage kan in de daarvoor bestemde doos (met het opschrift algoritmiek) in de postkamer (kamer 156, 1e verdieping). De deadline is 16 maart.

Hieronder is een tabel met een paar winnende zetten voor een m bij n chompbord. Te gebruiken om de werking van het te schrijven programma te controleren.
mn xy
1201
2413
2514
2211
3311
4411
3412
3523
4522

Cijfers opgave 1:
NaamCijfer
Achnine / Cheng 8
de Bruin 8.5
van Deen 6.5
van Dijk 6
Dorsman / Wortel 7.5
Groentjes / Peymani 7
Harmsen 5.5
den Hoed / de Koning 7.5
Hoogeveen 6.5
IJsveld 9
Jin 8
Juttmann 7.5
Kasteleyn 7.5
Kwint / Schoonewille 7.5
van der Lubbe 10
Nijkamp 5.5
van Opheusden 7
Overal / Witteveen 5.5
Vis / de Zwijger 8.5
Zaaijer 9

Let erop dat mensen met een 5.5 voor deze opgave een 6 krijgen, maar de volgende keer wordt het naar een 5 afgerond.

Hier staat een werkende implementatie, deze is gebruikt bij het nakijken.

Programmeeropgave 2

De opgave is hier te vinden. Het inleveren moet zowel electronisch als op papier gebeuren.
De papieren versie van het verslag met de code als bijlage kan in de daarvoor bestemde doos (met het opschrift algoritmiek) in de postkamer (kamer 156, 1e verdieping). De deadline is 13 april.

Hieronder staan een paar voorbeelden van mogelijke ritten op een m bij n bord.

Een open rit op een 4x3 bord, beginpositie (3, 1).
583
2116
749
10112

Een open rit op een 3x9 bord, beginpositie (2, 2).
23263 141720 5811
2152225413 10196
27241162118 7129

Een gesloten rit op een 8x8 bord, beginpositie n.v.t.
11631 36318 2134
30372173235 419
156461384720 3322
622948436039 46 5
491463564542 2340
285544595257 69
13505326118 4124
542712515825 107

Een gesloten rit op een 19x6 bord, beginpositie n.v.t.
12914 39467
15441183740
10133845647
431655484136
54514235565
175853624934
52615057463
591869643330
68656031703
197267762932
66797471277
732083787528
82878097841
2110085882798
8681969911489
1012211390103 26
11295102105108 91
231069311025 104
941112410792 109

Cijfers opgave 2:
NaamCijfer
Achnine / Cheng 9
de Bruin 6.5
van Deen 9.5
van Dijk *
Dorsman / Wortel 7
Groentjes / Peymani 6
Harmsen *
den Hoed / de Koning 6.5
Hoogeveen 6
IJsveld 9.5
Jin 8.5
Juttmann 9
Kasteleyn 7
Kwint / Schoonewille 7.5
van der Lubbe 9
Nijkamp 7
van Opheusden 8.5
Overal / Witteveen v
Vis / de Zwijger 10
Zaaijer 9

* : Nog niet volledig ingeleverd.
v : Goedgekeurd.

Hier staat een werkende implementatie, deze is gebruikt bij het nakijken. Dit is een versie uit mijn eigen studie.

Programmeeropgave 3

De opgave is hier te vinden. Het inleveren moet zowel electronisch als op papier gebeuren.
De papieren versie van het verslag met de code als bijlage kan in de daarvoor bestemde doos (met het opschrift algoritmiek) in de postkamer (kamer 156, 1e verdieping). De deadline is 21 mei.

Hieronder staan een aantal invoerbestanden en de antwoorden.

NaamAntwoord
Test 1 3
Test 2 6
Test 3 1
Test 4 2
Test 5 7
Test 6 4
Test 7 2
Test 8 0
Test 9 3
Test 10 100
Test 11 255
Test 12 50
Test 13 236
Test 14 401
Test 15 122
Test 16 324

Cijfers opgave 3:
NaamCijfer
Achnine / Cheng 7
de Bruin 6.5
van Deen 9.5
van Dijk *
Dorsman / Wortel 7.5
Groentjes / Peymani *
Harmsen *
den Hoed / de Koning 5.5
Hoogeveen *
IJsveld 10
Jin 7
Juttmann v
Kasteleyn 8
Kwint / Schoonewille 8.5
van der Lubbe 9
Nijkamp 9.5
van Opheusden 9
Overal / Witteveen v
Vis / de Zwijger 10
Zaaijer 10

* : Nog niet volledig ingeleverd.
v : Goedgekeurd.

Hier staat een werkende implementatie, deze is gebruikt bij het nakijken.
previous page go to top
Last edited by: Jeroen Laros with /usr/bin/vim